// 文档 https://github.com/hooke007/MPV_lazy/wiki/4_GLSL

// MIT License

// Copyright (c) 2024 Joao Chrisostomo

// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:

// The above copyright notice and this permission notice shall be included in all
// copies or substantial portions of the Software.

// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
// SOFTWARE.

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Doubling Chroma)
//!HOOK CHROMA
//!BIND CHROMA
//!WIDTH CHROMA.w 2.0 *
//!HEIGHT CHROMA.h 2.0 *
//!OFFSET ALIGN
//!WHEN OUTPUT.w CHROMA.w 2.400 * > OUTPUT.h CHROMA.h 2.400 * > *
vec4 hook() {
    return CHROMA_texOff(0.0);
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-0)
//!HOOK NATIVE
//!BIND NATIVE
//!SAVE conv2d_tf
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (NATIVE_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(-0.082057945, 0.066264294, -0.07857404, 0.1481867, -0.069834635, -0.12642917, 0.06530687, -0.0014279933, 0.071623705, 0.0458702, 0.023464484, 0.022118961, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, -1.0);
    result += mat4(-0.08071173, -0.09356071, -0.067476004, 0.06719966, 0.035020947, -0.008601299, 0.06665151, -0.011607913, -0.01784216, -0.10098224, 0.11532776, -0.013459268, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 0.0);
    result += mat4(-0.05225556, 0.14817238, -0.0363986, 0.015203147, -0.09032652, 0.13397062, -0.053083707, -0.15657096, 0.045851912, -0.10317776, 0.058279525, -0.06487191, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 1.0);
    result += mat4(0.11991887, -0.07240659, 0.053814422, 0.037408456, -0.09140496, -0.059910465, 0.02298674, -0.15710427, -0.031373966, -0.07905293, 0.023426076, -0.14888556, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, -1.0);
    result += mat4(0.24153896, -0.0810244, -0.37341878, 0.023172688, 0.05219334, 0.06944328, 0.1237553, 0.02806978, -0.045473143, -0.012102933, 0.11277108, -0.24117446, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 0.0);
    result += mat4(0.097840235, 0.18097852, 0.12646897, 0.053629626, -0.14604071, -0.03932425, 0.011037726, 0.0026053363, 0.010214218, -0.097897895, -0.036677424, -0.08985013, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 1.0);
    result += mat4(-0.1718299, 0.051608674, -0.028282866, -0.08079492, 0.07987326, -0.082049, 0.001047159, 0.09791385, -0.0909272, 0.12381078, 0.07149998, 0.0740795, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, -1.0);
    result += mat4(0.11191374, -0.12938493, -0.060130868, 0.08384265, 0.03321208, 0.043158226, -0.006480819, -0.051412594, 0.078298934, 0.21520974, -0.04115478, -0.10099355, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 0.0);
    result += mat4(0.050929707, -0.0844839, 0.118208855, 0.044726215, 0.04478383, -0.0706349, 0.09523451, -0.067549035, -0.039694604, -0.068639256, -0.10426216, 0.0018556662, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 1.0);
    result += vec4(-0.049399372, 0.10201628, -0.016127247, 0.03209569);
    return result;
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-0)
//!HOOK NATIVE
//!BIND NATIVE
//!SAVE conv2d_tf1
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (NATIVE_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(-0.046880394, -0.002818482, 0.038974702, 0.08987683, -0.06133477, -0.011047316, -0.025728123, -0.112540014, 0.025769195, -0.03819121, 0.07261248, 0.15984218, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, -1.0);
    result += mat4(-0.016743068, 0.016151134, -0.090530396, -0.040060706, 0.09671794, -0.15981975, 0.044190012, -0.13829379, 0.12609448, -0.080310605, -0.117853574, -0.12769203, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 0.0);
    result += mat4(0.057026505, -0.010715096, 0.09318563, -0.015031491, -0.1301732, -0.031765565, 0.09623008, -0.058150984, 0.105494626, -0.0029957055, -0.10944672, 0.10294439, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 1.0);
    result += mat4(0.13168417, -0.11179613, 0.04301793, 0.089961715, 0.054674115, -0.1878237, -0.04153882, -0.14428592, 0.09630651, -0.011938, 0.072596855, 0.20105705, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, -1.0);
    result += mat4(-0.13734284, 0.24331772, 0.13681838, -0.087788485, 0.10926918, -0.1503411, 0.10656391, 0.07265275, 0.018204685, 0.16111247, 0.19686644, 0.09177888, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 0.0);
    result += mat4(-0.0352933, -0.06858851, 0.08097426, -0.17379737, 0.041778814, 0.09806213, 0.06820268, 0.023346918, 0.030059962, -0.009883466, 0.14108765, 0.18254666, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 1.0);
    result += mat4(-0.09479926, 0.06264077, 0.08129344, -0.14846621, -0.12759021, -0.0356466, -0.013221153, 0.105720915, -0.10978963, -0.13648644, -0.08776755, 0.016147485, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, -1.0);
    result += mat4(-0.15388478, 0.0289131, 0.04165842, -0.18345758, 0.120515876, -0.12422521, 0.0029808686, -0.08654946, 0.09844628, 0.02352583, -0.030528469, 0.16431037, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 0.0);
    result += mat4(0.0116058085, 0.08771045, 0.028516458, 0.12899634, -0.059891775, 0.20668827, 0.08247415, -0.07825452, -0.08797665, 0.08179734, 0.08676231, -0.03173659, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 1.0);
    result += vec4(0.016888974, 0.0063405083, -0.022479415, -0.00087726914);
    return result;
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-0)
//!HOOK NATIVE
//!BIND NATIVE
//!SAVE conv2d_tf2
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (NATIVE_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(0.11851341, 0.081633404, -0.08085808, -0.0566253, -0.06715864, -0.028625663, 0.11646693, 0.011468749, -0.029150773, -0.06815004, 0.052975107, -0.076259725, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, -1.0);
    result += mat4(-0.113854885, 0.1176527, 0.08210169, -0.018602433, 0.13805512, -0.094291806, -0.15385981, 0.018936997, -0.03467848, 0.10261565, 0.07825041, 0.04958595, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 0.0);
    result += mat4(0.11994309, -0.14726675, -0.09940425, -0.01731997, 0.039630737, 0.011720717, -0.015625492, 0.05861876, 0.005531912, 0.003320382, -0.086304694, -0.011570132, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 1.0);
    result += mat4(-0.09790078, 0.15675513, 0.13697019, -0.1068077, 0.114493646, -0.06582585, 0.030072035, 0.12581249, -0.063880146, -0.09142972, -0.17604719, 0.1279796, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, -1.0);
    result += mat4(-0.020820536, 0.16410503, -0.028008644, 0.3051862, 0.16810545, -0.21706961, -0.06601326, 0.19505233, 0.0140216155, 0.014083414, -0.059281345, 0.13991895, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 0.0);
    result += mat4(-0.22245038, -0.05894328, -0.004651553, 0.081583746, 0.19333497, 0.11845934, -0.15042719, 0.059833318, -0.005776663, 0.03080973, 0.0053260163, 0.06699854, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 1.0);
    result += mat4(-0.1331671, 0.037790313, 0.16180864, -0.12948158, 0.028610393, -0.080959134, 0.09728174, -0.11533599, 0.07058175, 0.1257068, -0.005146545, 0.07451348, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, -1.0);
    result += mat4(0.019437693, 0.04443768, -0.07975974, -0.20782082, 0.026489183, -0.07610155, 0.071325324, -0.16262768, -0.15121213, 0.06045902, 0.08246129, 0.011853095, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 0.0);
    result += mat4(0.011705135, -0.013239449, -0.050410602, 0.042939033, 0.023543954, -0.00279044, -0.031720098, -0.10525307, 0.08254625, -0.19242738, -0.020108957, -0.17496601, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 1.0);
    result += vec4(-0.04245717, -0.02766881, 0.045094084, -0.065742895);
    return result;
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-0)
//!HOOK NATIVE
//!BIND NATIVE
//!SAVE conv2d_tf3
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (NATIVE_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(-0.13201393, 0.123449326, -0.040450927, -0.11527787, 0.02692467, 0.0043755295, 0.09303701, 0.002034922, -0.04678809, -0.023317898, -0.00011495629, 0.06047843, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, -1.0);
    result += mat4(0.06236756, -0.055155903, -0.016831517, 0.018933952, 0.052493516, 0.21196818, 0.04766624, 0.006074476, 0.17326693, -0.17378493, 0.021347726, -0.011082078, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 0.0);
    result += mat4(0.0142954765, 0.053851537, -0.055295065, 0.074839786, 0.060393065, 0.099848956, -0.17103434, 0.14285767, 0.035271525, 0.097060055, -0.013849907, -0.0720978, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 1.0);
    result += mat4(0.054064717, 0.14540169, -0.11921678, -0.11637783, 0.036669962, -0.0038856375, -0.17590378, 0.003266096, -0.068136714, -0.10429265, -0.06323794, -0.054817393, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, -1.0);
    result += mat4(0.0584568, -0.15707177, -0.052649114, 0.11956064, -0.2746087, -0.12365068, -0.226996, 0.15478079, 0.09309117, -0.030479012, -0.075492024, -0.038741756, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 0.0);
    result += mat4(0.016513688, 0.02389038, -0.003722715, -0.15267307, 0.046374355, 0.036583245, -0.13888635, -0.099653035, 0.09345639, 0.08869347, -0.031936537, -0.15792264, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 1.0);
    result += mat4(-0.053428486, -0.03226314, 0.004445768, 0.11035714, -0.016699452, -0.06373678, 0.025581384, 0.16074261, 0.09459043, -0.007864314, -0.08823347, -0.010711828, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, -1.0);
    result += mat4(-0.13738325, -0.064480126, -0.031184155, -0.17731659, -0.2254657, 0.11808158, 0.08904978, -0.098558456, 0.14737046, -0.095738225, 0.061863065, 0.055898365, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 0.0);
    result += mat4(0.07498615, -0.03309494, 0.027591947, -0.085481666, -0.11229895, 0.032287326, -0.027750678, -0.028879376, -0.14326137, -0.05982774, -0.03136054, 0.054756634, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 1.0);
    result += vec4(-0.010939147, 0.0058321073, 0.028356276, 0.03526434);
    return result;
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-1-ReLU)
//!HOOK NATIVE
//!BIND conv2d_tf
//!BIND conv2d_tf1
//!BIND conv2d_tf2
//!BIND conv2d_tf3
//!SAVE conv2d_1_tf
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (conv2d_tf_texOff(vec2(x_off, y_off)))
#define input_1(x_off, y_off) (conv2d_tf1_texOff(vec2(x_off, y_off)))
#define input_2(x_off, y_off) (conv2d_tf2_texOff(vec2(x_off, y_off)))
#define input_3(x_off, y_off) (conv2d_tf3_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(-0.016563814, -0.021930985, -0.027792288, -0.047958657, 0.024542367, -0.12297694, -0.041013155, 0.05532179, -0.1663206, -0.18334472, 0.15117383, 0.009552531, -0.11193203, -0.069683485, -0.034740273, 0.046851933) * input_0(-1.0, -1.0);
    result += mat4(-0.07931745, -0.08775143, 0.081204236, 0.062048182, 0.13210589, -0.046149015, 0.12897488, -0.17943546, -0.11618428, 0.067083076, 0.056166608, -0.03522351, -0.21228889, -0.02015406, 0.013719664, -0.020552652) * input_0(-1.0, 0.0);
    result += mat4(0.023581348, -0.20959195, 0.059086625, -0.033273723, 0.081045985, -0.009293964, 0.0012443387, -0.07347154, -0.051661253, -0.03642739, -0.03732103, 0.023695529, 0.022552717, -0.0044231736, -0.030187545, 0.006005727) * input_0(-1.0, 1.0);
    result += mat4(-0.06571792, -0.10156519, -0.09929382, -0.13459048, -0.198903, 0.0052179685, 0.022391612, 0.037030514, 0.14114006, 0.029714247, 0.094034925, 0.19887252, 0.036943894, 0.002596925, 0.1421079, -0.025661573) * input_0(0.0, -1.0);
    result += mat4(0.16173474, 0.09565115, -0.115689404, 0.012838888, -0.29799685, 0.28723696, -0.25681642, -0.12983027, 0.12018783, 0.08582591, -0.14475267, 0.032162167, -0.21003184, 0.11368031, 0.027959, 0.07542483) * input_0(0.0, 0.0);
    result += mat4(-0.19848432, -0.0050747604, -0.07053155, 0.11399389, -0.025978202, -0.042791378, 0.065988466, 0.06417601, 0.066847794, 0.010400137, -0.10811468, -0.13677147, -0.10641067, 0.0009835449, -0.08610752, 0.03738672) * input_0(0.0, 1.0);
    result += mat4(-0.09158607, 0.07900302, -0.05800994, 0.1749079, -0.107469596, -0.024032082, -0.1775125, 0.14479662, 0.0193393, -0.027637271, -0.060941715, 0.0023855926, 0.10653688, -0.11907492, 0.12678128, 0.12032242) * input_0(1.0, -1.0);
    result += mat4(-0.020705365, -0.088643976, -0.06639011, -0.046603642, -0.03526866, 0.07970193, 0.18077843, 0.10650452, 0.13995913, 0.014677852, -0.45416108, -0.09055212, 0.13541637, 0.060503006, 0.17689721, -0.036721624) * input_0(1.0, 0.0);
    result += mat4(0.057588197, 0.10237115, -0.053181004, -0.022013666, 0.011324046, 0.000356491, 0.12614402, 0.0022084743, 0.11536058, -0.058323294, 0.13350001, 0.013083031, 0.012403925, -0.05714922, -0.104251325, -0.11310533) * input_0(1.0, 1.0);
    result += mat4(-0.07443093, 0.08971419, -0.09632264, 0.21870628, 0.015591522, -0.044923525, 0.058937814, -0.10995026, -0.009561983, -0.08489081, -0.06472708, 0.0070082666, 0.03219912, 0.051708397, -0.035231747, -0.09430318) * input_1(-1.0, -1.0);
    result += mat4(0.113080464, 0.07114373, -0.0034447708, 0.28043923, -0.023061607, -0.05626088, -0.035986934, 0.15313374, -0.04019338, 0.0052040224, 0.04114835, 0.024022479, 0.03467997, -0.1640977, 0.05346244, -0.17527865) * input_1(-1.0, 0.0);
    result += mat4(-0.045480505, -0.25537014, 0.0029987984, -0.051379114, -0.041094426, 0.043760546, 0.0043767826, 0.026326496, -0.04807784, -0.099470116, 0.004856777, -0.017471114, 0.062210154, 0.07127075, 0.12801217, 0.02730881) * input_1(-1.0, 1.0);
    result += mat4(-0.037252277, 0.16921051, 0.04469887, -0.07183691, 0.1749505, 0.11282915, 0.14282744, -0.035227384, -0.16913381, -0.053778056, 0.11202028, -0.05589638, 0.0008954262, -0.13276146, 0.08893175, 0.11865122) * input_1(0.0, -1.0);
    result += mat4(0.022512013, 0.01606444, 0.09662957, 0.3522007, -0.12503111, -0.24990278, -0.077842765, 0.051154576, 0.08938307, -0.08810265, 0.04967015, 0.000397752, -0.2136287, -0.024093736, -0.030055374, 0.04422733) * input_1(0.0, 0.0);
    result += mat4(-0.14251576, 0.08894381, 0.013801981, 0.26655918, 0.116565526, -0.0067806775, 0.049428146, -0.039020937, 0.08640222, -0.13778205, 0.07315239, -0.023696551, -0.03722776, -0.013940891, -0.19956867, -0.135833) * input_1(0.0, 1.0);
    result += mat4(0.22212268, -0.20029904, 0.074466944, -0.12313265, -0.033562277, 0.07462599, -0.033083744, 0.12249375, -0.13449864, -0.0014132764, -0.023792181, 0.017285028, 0.022542205, 0.11724539, 0.012544215, 0.007940697) * input_1(1.0, -1.0);
    result += mat4(0.10577904, -0.09937414, -0.016670955, 0.031108212, -0.032347497, 0.15126017, -0.22540946, 0.016320154, 0.025275484, 0.0878609, -0.077900976, 0.11341311, -0.05702353, -0.073175326, -0.24349311, 0.07998403) * input_1(1.0, 0.0);
    result += mat4(0.07845095, -0.001919172, 0.2907556, 0.018775038, -0.0044864267, 0.017388903, 0.21524061, 0.09050154, -0.13904145, 0.024179619, -0.04746601, -0.03826495, -0.047549374, 0.11928294, 0.16527246, -0.195378) * input_1(1.0, 1.0);
    result += mat4(0.012650482, 0.14176154, 0.10940294, -0.077660404, -0.1383616, -0.051232684, -0.070684366, 0.14528356, 0.038411636, 0.018805465, -0.015778702, 0.06745335, 0.065698415, -0.019773716, -0.06371505, 0.09114858) * input_2(-1.0, -1.0);
    result += mat4(-0.06624403, -0.153327, 0.021435466, -0.14310603, -0.082899205, -0.054702803, 0.07839468, -0.041050844, 0.14665177, 0.11581248, 0.022431709, -0.13887852, -0.12920374, -0.19654018, 0.087077335, 0.21841122) * input_2(-1.0, 0.0);
    result += mat4(0.04348685, -0.11897518, 0.020290313, -0.019629296, 0.023782622, -0.23405682, -0.004328716, 0.050684854, -0.037922192, 0.033653516, 0.00633921, 0.045935035, 0.24453054, -0.042425036, -0.10199485, -0.13946116) * input_2(-1.0, 1.0);
    result += mat4(-0.05588849, -0.021418488, -0.028973045, -0.0068272417, 0.022478277, 0.22763568, 0.06464227, 0.28926867, -0.18679771, -0.09934228, -0.107608095, 0.12497039, -0.07995131, -0.01732346, -0.043011356, 0.05118798) * input_2(0.0, -1.0);
    result += mat4(0.19425306, -0.020005532, 0.15113044, -0.005219119, 0.13143235, -0.09663145, 0.09413312, -0.09813193, 0.07455061, -0.008575018, 0.061287213, 0.045757994, 0.10798243, 0.028356638, 0.09580181, -0.017669942) * input_2(0.0, 0.0);
    result += mat4(-0.13243352, -0.027253632, -0.049547855, 0.1691363, -0.029311037, -0.15530999, -0.11035901, -0.17634146, -0.10031116, 0.13811181, 0.09166773, 0.1857719, 0.00026227487, -0.002420448, -0.2716034, 0.03653098) * input_2(0.0, 1.0);
    result += mat4(-0.0963069, 0.003169118, -0.11763174, 0.007329523, -0.005007363, 0.014999374, 0.05139322, -0.1336604, -0.00044953485, 0.09192853, 0.04935167, 0.04111167, -0.096044704, 0.15229385, 0.14434952, 0.13832101) * input_2(1.0, -1.0);
    result += mat4(-0.06289053, 0.040771816, 0.06937917, -0.15365806, 0.06645983, 0.0077364817, -0.19268739, -0.030030506, -0.08475329, -0.026259048, -0.033904582, -0.06962483, -0.13508637, 0.15324144, 0.055895172, -0.048454367) * input_2(1.0, 0.0);
    result += mat4(0.011403344, 0.06261544, -0.10859161, 0.057721544, -0.036938045, 0.02141185, 0.070266575, 0.019507114, -0.04599501, 0.04123403, 0.18635955, 0.1179166, -0.076379746, 0.114610806, 0.26775438, -0.044790633) * input_2(1.0, 1.0);
    result += mat4(0.0047694175, -0.11325691, -0.0058433656, -0.12193832, 0.03149965, -0.11182736, -0.008842934, 0.048235044, -0.06511796, 0.0071163503, 0.04683895, 0.07676401, -0.122072995, -0.025330039, -0.074293785, -0.0147975655) * input_3(-1.0, -1.0);
    result += mat4(0.070583016, 0.016360505, 0.046423867, -0.26371452, 0.15217319, -0.03894794, 0.1383824, -0.050085884, 0.027547821, -0.15189123, -0.04079578, -0.07407497, -0.13360485, -0.086884014, -0.029563425, -0.022835441) * input_3(-1.0, 0.0);
    result += mat4(-0.17494059, -0.103623584, -0.04982486, 0.06272013, -0.02056768, -0.024624934, 0.009544597, 0.102242306, -0.013951739, -0.081930146, 0.0068954006, -0.07353168, -0.025438352, 0.029505663, 0.008049199, 0.10881319) * input_3(-1.0, 1.0);
    result += mat4(0.050298177, -0.19585896, 0.11863309, 0.05858022, 0.08200904, -0.13954058, 0.014007118, -0.21468435, -0.053347092, -0.10660443, 0.046980187, 0.046225347, -0.08244185, 0.10667381, -0.043354172, 0.18284464) * input_3(0.0, -1.0);
    result += mat4(0.08569185, 0.002699819, -0.18300472, -0.19282648, -0.019890815, -0.08978252, -0.10241791, -0.14190854, 0.0566329, -0.13500264, -0.018170187, -0.093549974, -0.07831718, -0.018021377, 0.07133478, -0.06075829) * input_3(0.0, 0.0);
    result += mat4(-0.08237684, 0.38316977, -0.05815352, 0.08746777, -0.18485509, -0.046757486, -0.14594868, 0.10255434, -0.0985157, 0.08143422, 0.0189963, -0.019046802, -0.053576812, -0.013756139, -0.046868082, -0.027090747) * input_3(0.0, 1.0);
    result += mat4(-0.05033519, 0.018839002, -0.060117047, -0.05885473, -0.073201075, 0.14630343, -0.028417097, 0.04652978, -0.07643526, -0.023703376, -0.075578645, 0.08720076, 0.07941497, 0.052919194, 0.07775521, 0.09333852) * input_3(1.0, -1.0);
    result += mat4(0.10354041, -0.09284959, -0.08849211, -0.11539745, -0.07184154, -0.14695947, -0.21408452, 0.13490728, -0.09493457, 0.062251456, -0.10068821, 0.02074836, 0.09600399, 0.046238754, 0.31950736, 0.024454078) * input_3(1.0, 0.0);
    result += mat4(0.04051932, -0.15332828, 0.36996064, 0.23648024, -0.07194958, -0.02096421, 0.024022672, 0.048570238, 0.11645465, -0.11090695, -0.109007254, 0.054251935, 0.09842428, 0.011024934, 0.08440813, -0.21739776) * input_3(1.0, 1.0);
    result += vec4(0.056751918, 0.1165558, -0.04242907, 0.15530749);
    return max(result, vec4(0.0));
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-1-ReLU)
//!HOOK NATIVE
//!BIND conv2d_tf
//!BIND conv2d_tf1
//!BIND conv2d_tf2
//!BIND conv2d_tf3
//!SAVE conv2d_1_tf1
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (conv2d_tf_texOff(vec2(x_off, y_off)))
#define input_1(x_off, y_off) (conv2d_tf1_texOff(vec2(x_off, y_off)))
#define input_2(x_off, y_off) (conv2d_tf2_texOff(vec2(x_off, y_off)))
#define input_3(x_off, y_off) (conv2d_tf3_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(0.020398485, -4.9635903e-05, -0.02491967, 0.0010306285, 0.045681078, -0.055097535, -0.11231289, 0.010250623, 0.14188316, 0.004614059, -0.031444073, 0.1739058, -0.014111609, 0.12140965, 0.07171961, -0.09519962) * input_0(-1.0, -1.0);
    result += mat4(0.18691571, -0.08561363, 0.16339919, -0.09214491, -0.07022716, -0.018222075, 0.19428404, -0.08563404, -0.06693618, 0.021309977, -0.012409124, -0.11767856, 0.109430075, -0.07415514, -0.0614727, -0.1324921) * input_0(-1.0, 0.0);
    result += mat4(0.0049326476, -0.13557261, 0.12695016, -0.028613577, 0.0035682023, 0.022574782, 0.11429249, -0.0018957088, -0.097796865, 0.004777132, -0.0561648, -0.048418038, -0.053814836, -0.033667505, -0.012247242, -0.007236106) * input_0(-1.0, 1.0);
    result += mat4(0.08292801, 0.036751773, 0.041795462, -0.047674425, -0.030382376, 0.06418202, -0.119358495, 0.14942612, 0.44894537, -0.166986, -0.09217135, 0.15594544, -0.008827127, 0.10390899, -0.1116503, 0.07866343) * input_0(0.0, -1.0);
    result += mat4(-0.04306706, -0.19614184, 0.08449404, -0.08500778, 0.05359657, 0.23145296, -0.016849797, -0.15380108, 0.024581127, 0.25974694, 0.08564318, -0.22312096, 0.046605993, 0.17592439, -0.2280968, 0.1987756) * input_0(0.0, 0.0);
    result += mat4(0.0055373614, 0.14611708, 0.09224024, 0.10069288, -0.10015341, 0.024264352, 0.19900481, 0.043246, -0.09485472, -0.040276334, -0.02299345, -0.14726558, 0.050907, -0.106975324, 0.17946553, 0.09313402) * input_0(0.0, 1.0);
    result += mat4(0.0020274653, -0.13010539, -0.07436647, 0.09684431, -0.13756548, 0.102132864, -0.06682186, 0.14332505, 0.019721722, -0.1604184, 0.024869587, -0.06940913, 0.00414045, 0.011336427, -0.11181949, -0.085167184) * input_0(1.0, -1.0);
    result += mat4(0.06458666, -0.009782654, -0.053596023, -0.2664902, -0.11942675, -0.33914286, 0.008999932, 0.042821407, 0.07239892, 0.046646096, 0.17243046, -0.15446429, -0.13089675, 0.04764015, 0.03913219, 0.031729482) * input_0(1.0, 0.0);
    result += mat4(0.120930225, -0.10548074, 0.061999694, 0.123160265, 0.2282623, 0.04050798, -0.083667986, -0.025394464, -0.041078594, -0.018355383, -0.09926265, 0.009222016, 0.013463548, 0.047200236, 0.09266734, -0.1659999) * input_0(1.0, 1.0);
    result += mat4(-0.038837273, 0.11546161, -0.18619375, -0.06960226, 0.13204287, 0.067055926, 0.009061633, -0.0045827227, 0.0043443358, 0.06651986, 0.057473116, -0.010608851, -0.067582116, -0.010748492, -0.028737685, -0.011507808) * input_1(-1.0, -1.0);
    result += mat4(0.0018127646, -0.091010384, 0.07527118, -0.019805033, 0.024352547, -0.03289183, -0.06453919, -0.11715245, -0.12753001, 0.013986358, 0.0316051, 0.04434218, 0.2396018, -0.10906874, 0.049689155, 0.18905039) * input_1(-1.0, 0.0);
    result += mat4(0.0015220155, 0.070781924, 0.26707277, -0.040077157, 0.1364029, 0.026079595, 0.08377512, -0.035773862, 0.04752373, -0.0034650057, -0.16754958, 0.014709168, 0.062825, -0.010734702, -0.13900104, 0.19513975) * input_1(-1.0, 1.0);
    result += mat4(0.18507566, 0.057799645, 0.052343797, 0.04628761, 0.15699288, -0.19429561, 0.116077796, 0.09129626, 0.1295038, -0.06039205, 0.043217666, -0.07107574, -0.05223536, -0.04613027, -0.023859357, -0.02011223) * input_1(0.0, -1.0);
    result += mat4(0.0133322785, 0.033133123, 0.03370428, 0.10946675, -0.104023755, 0.012797917, -0.050662283, -0.073964626, -0.06367395, 0.07051267, -0.081768095, -0.15239064, 0.03626198, -0.030927757, 0.03239764, -0.05741837) * input_1(0.0, 0.0);
    result += mat4(-0.17127141, 0.110961616, -0.031608123, 0.10206566, 0.02411924, -0.080093354, 0.1450632, 0.072895505, -0.020034403, -0.09174539, -0.13636445, -0.09964258, -0.13997728, -0.106348276, -0.11162765, -0.24786144) * input_1(0.0, 1.0);
    result += mat4(-0.047585648, 0.23313048, -0.042342905, -0.15044172, 0.07920002, -0.07033452, 0.0786098, 0.18363285, -0.0018933212, -0.21045087, -0.08955845, 0.10538141, -0.09653409, 0.10877438, 0.1124359, 0.05037057) * input_1(1.0, -1.0);
    result += mat4(-0.19644254, -0.018281505, 0.06563906, -0.14817435, -0.24496317, 0.025082063, 0.032908656, 0.11520359, 0.109579906, 0.0077094343, -0.13502917, 0.05391616, 0.07966189, 0.082663044, -0.070203416, 0.16070648) * input_1(1.0, 0.0);
    result += mat4(0.14170435, 0.23596455, 0.09731277, 0.051550545, 0.11946723, 0.121813945, -0.06261012, 0.15999685, -0.07738578, 0.08330418, 0.033326026, 0.018382218, 0.027246254, 0.03940483, 0.047342174, -0.2273176) * input_1(1.0, 1.0);
    result += mat4(-0.061246764, 0.14122431, -0.06176749, 0.02846398, -0.05358877, 0.1482603, -0.13018984, -0.014692606, 0.014349504, 0.016542947, -0.094148465, 0.047326513, 0.07038549, -0.07180934, 0.07093247, 0.00080755126) * input_2(-1.0, -1.0);
    result += mat4(0.11160906, 0.033135433, 0.06609211, -0.1099556, 0.0018529223, -0.021623269, 0.13618927, -0.10298301, 0.018513164, 0.019234119, -0.057749555, -0.021697572, 0.26383907, 0.23832199, -0.2184729, -0.1316824) * input_2(-1.0, 0.0);
    result += mat4(-0.15400049, -0.011790864, 0.2120641, -0.14101784, -0.06268829, 0.05320311, 0.022690177, -0.05495036, 0.11181354, -0.054385412, 0.025180714, 0.020129036, -0.05424156, -0.062719755, -0.043583572, -0.1146984) * input_2(-1.0, 1.0);
    result += mat4(0.017457984, -0.16495585, 0.033489328, -0.044585634, 0.055757884, -0.19891387, 0.03290787, 0.12297491, 0.05506247, 0.13472463, -0.052615177, 0.048200067, -0.05766818, 0.043047618, -0.052001707, -0.093038425) * input_2(0.0, -1.0);
    result += mat4(0.04260099, -0.1211121, 0.12116191, 0.116040856, 0.115786016, -0.013460298, 0.15920985, -0.11127997, -0.15757209, -0.08439132, 0.091316424, -0.031852074, 0.21953009, -0.04950199, 0.26493347, -0.11166657) * input_2(0.0, 0.0);
    result += mat4(0.085250266, 0.23136714, -0.046855316, 0.14211816, -0.1485924, 0.019610612, 0.09078515, -0.013730114, 0.08565634, -0.087967955, 0.079612, 0.1659655, -0.019530695, 0.033409234, -0.17570932, 0.04376987) * input_2(0.0, 1.0);
    result += mat4(-0.028410714, -0.04894619, -0.06402235, 0.023143344, 0.07645637, -0.12040409, -0.012245721, -0.21552843, -0.029524827, -0.028996026, 0.04446015, 0.040290415, 0.02813003, -0.2401678, 0.07734411, 0.11229628) * input_2(1.0, -1.0);
    result += mat4(0.08035749, -0.41742373, 0.026855063, 0.1013676, 0.110228345, 0.07282257, 0.06215676, -0.04540822, -0.049485844, 0.015911344, 0.08588782, -0.088798225, 0.17605263, -0.23211063, -0.009652091, 0.0006059986) * input_2(1.0, 0.0);
    result += mat4(0.039731935, -0.13214289, 0.16241868, 0.07464026, -0.05643606, 0.033867493, 0.19293468, 0.017274635, 0.09983308, -0.053506646, 0.107334524, 0.086368166, -0.06091712, 0.03542631, -0.059883785, 0.09048059) * input_2(1.0, 1.0);
    result += mat4(-0.08474723, 0.09777387, 0.16434944, 0.02861841, 0.12818798, -0.111131504, 0.14768916, 0.057791103, -0.05774265, 0.02457154, -0.12579404, -0.09407479, -0.09589741, 0.13015611, 0.057213213, -0.13383065) * input_3(-1.0, -1.0);
    result += mat4(0.28147435, -0.076923534, 0.003214022, -0.13161798, 0.26642287, -0.09482148, -0.24591671, -0.009643176, -0.053766076, 0.08343143, -0.0098106535, 0.024345066, -0.032755446, -0.05428946, 0.041220285, -0.042501405) * input_3(-1.0, 0.0);
    result += mat4(0.009183239, 0.037697148, -0.06515528, -0.030334208, 0.15995638, -0.043806233, -0.046567306, 0.05696453, 0.080911435, 0.07473548, -0.05062653, -0.08774696, 0.0478065, -0.030770691, -0.0012723664, 0.08578799) * input_3(-1.0, 1.0);
    result += mat4(-0.077170216, -0.107404515, -0.106743224, -0.0055531245, -0.086210825, 0.07164989, 0.13586396, -0.18430784, -0.19228968, -0.07062988, -0.063791476, 0.02364475, -0.06542648, -0.019384835, 0.05976939, 0.026540633) * input_3(0.0, -1.0);
    result += mat4(-0.25807732, 0.14101067, -0.19988656, 0.11228754, -0.12947676, 0.027451292, -0.25550523, 0.10685146, -0.11060021, -0.12105172, 0.041199673, 0.02698885, 0.105802156, 0.10119584, 0.11291909, 0.1483326) * input_3(0.0, 0.0);
    result += mat4(-0.030156443, -0.15080996, 0.05016423, 0.2673321, 0.12871598, -0.12164001, 0.000101073616, 0.03222169, -0.00909362, -0.016593635, 0.07904349, -0.061921164, 0.04265317, -0.13277899, 0.23332037, -0.036690768) * input_3(0.0, 1.0);
    result += mat4(0.010454443, 0.23969738, -0.08508418, 0.028609375, 0.034496386, -0.15867665, -0.008832983, 0.053534154, -0.031441256, 0.103388526, 0.028227704, -0.12427211, 0.098278284, 0.029087879, -0.10868779, 0.021443285) * input_3(1.0, -1.0);
    result += mat4(0.097376525, 0.0047315876, -0.09761054, -0.10556674, -0.09371911, 0.2408697, -0.12628217, 0.12821333, 0.03805097, 0.1203034, -0.014154419, 0.12725104, 0.06347199, 0.031208165, -0.04170252, -0.011845309) * input_3(1.0, 0.0);
    result += mat4(-0.009413049, -0.09788519, 0.1846108, 0.15015931, -0.08392113, -0.005649537, 0.15281664, 0.10352822, 0.015265287, 0.036747523, 0.117760845, 0.10314552, -0.060267575, 0.054755215, 0.013470378, -0.0729767) * input_3(1.0, 1.0);
    result += vec4(0.014866982, 0.17309101, 0.0589561, 0.090505496);
    return max(result, vec4(0.0));
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-1-ReLU)
//!HOOK NATIVE
//!BIND conv2d_tf
//!BIND conv2d_tf1
//!BIND conv2d_tf2
//!BIND conv2d_tf3
//!SAVE conv2d_1_tf2
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (conv2d_tf_texOff(vec2(x_off, y_off)))
#define input_1(x_off, y_off) (conv2d_tf1_texOff(vec2(x_off, y_off)))
#define input_2(x_off, y_off) (conv2d_tf2_texOff(vec2(x_off, y_off)))
#define input_3(x_off, y_off) (conv2d_tf3_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(-0.12374423, -0.03837324, 0.40279716, 0.018698845, -0.06413176, -0.064763315, -0.30568004, 0.10096138, 0.22835056, -0.3014759, 0.15040606, 0.06618425, 0.04508844, -0.055286296, 0.13689864, -0.011162841) * input_0(-1.0, -1.0);
    result += mat4(0.08609255, 0.03918681, 0.0023445205, -0.056764353, -0.24013765, -0.015439954, -0.14758751, -0.0065313363, 0.012330746, -0.006788444, 0.0021588171, 0.09191011, -0.122319765, 0.028759046, 0.68058383, 0.14407042) * input_0(-1.0, 0.0);
    result += mat4(-0.062469162, 0.07056697, 0.11984619, 0.05448091, 0.0094824815, 0.06707971, -0.20671754, -0.08810872, -0.29620025, 0.088825986, 0.014185805, 0.030343367, 0.11504328, 0.136501, 0.021103784, 0.18428984) * input_0(-1.0, 1.0);
    result += mat4(-0.023309307, 0.06322915, 0.07923154, 0.17538212, -0.16274612, -0.0773722, -0.22338584, -0.0352831, 0.17829753, -0.008009332, -0.0775542, 0.05159237, 0.04318637, -0.01961953, 0.0460149, -0.06984597) * input_0(0.0, -1.0);
    result += mat4(0.27362046, 0.2660892, -0.008348525, 0.024878278, -0.0699527, -0.14456694, 0.05754431, -0.070559934, 0.045046948, -0.25738725, 0.1411485, -0.054591782, -0.14941475, -0.39830044, -0.18639292, -0.119473025) * input_0(0.0, 0.0);
    result += mat4(0.20099889, 0.10466149, 0.0748947, -0.019094618, 0.15046896, -0.06572006, -0.19041973, -0.17480144, 0.066832095, 0.22860788, 0.17876455, 0.044092044, -0.041932657, -0.069891214, -0.15357515, 0.08754637) * input_0(0.0, 1.0);
    result += mat4(-0.027074723, 0.07982007, 0.022092724, 0.042982005, -0.059351612, 0.11905749, -0.047380485, -0.041472103, -0.0037348976, -0.10628962, 0.06622841, 0.09577871, -0.09687744, 0.026499717, -0.0391557, 0.08099009) * input_0(1.0, -1.0);
    result += mat4(0.046131928, 0.15784548, 0.012820212, 0.018821642, -0.015138319, -0.036986034, -0.22196028, 0.08997387, -0.06726406, 0.07543703, 0.13839777, 0.1588335, 0.06686571, -0.09428296, -0.115393706, 0.13738729) * input_0(1.0, 0.0);
    result += mat4(-0.029644951, -0.077869855, -0.10674448, 0.16971694, 0.014563989, -0.08472207, -0.16740091, 0.10056847, -0.08689434, -0.04731966, 0.0332224, 0.23630904, -0.03716201, 0.08741036, 0.038246732, -0.21592605) * input_0(1.0, 1.0);
    result += mat4(-0.036472406, 0.033365518, 0.19112813, 0.057801653, 0.15752837, 0.010501358, 0.14346871, 0.023107933, -0.014087936, 0.028986132, -0.34245884, 0.018204011, 0.13981305, 0.0031156754, -0.24282686, 0.02309594) * input_1(-1.0, -1.0);
    result += mat4(-0.11642906, 0.10928223, -0.4489257, 0.122898676, -0.10731211, -0.09972141, 0.10461174, 0.18533964, -0.029247435, 0.10435141, -0.20807937, 0.059163764, -0.24540526, -0.039126035, 0.13517752, 0.09120079) * input_1(-1.0, 0.0);
    result += mat4(-0.069957204, -0.11753691, 0.067483015, 0.16172822, 0.20178825, 0.011245841, 0.25519535, -0.080849364, -0.08638716, -0.082699016, 0.023309829, 0.018493654, 0.016141543, -0.013525464, -0.24199931, -0.03473725) * input_1(-1.0, 1.0);
    result += mat4(-0.015517712, 0.055063136, 0.09370493, -0.08630934, 0.11185028, 0.023571316, -0.0040455237, 0.047693837, -0.057642575, -0.047446582, -0.08977954, 0.05528327, -0.26124474, 0.008599865, 0.11020375, -0.11510252) * input_1(0.0, -1.0);
    result += mat4(0.031247249, 0.050195463, 0.09698125, -0.0622391, 0.039793152, -0.05328789, 0.0647935, 0.1336396, 0.06970297, 0.112102374, 0.050597947, 0.18793885, 0.11348854, -0.104723886, 0.22935453, 0.01939486) * input_1(0.0, 0.0);
    result += mat4(0.14889269, -0.084171675, -0.13589469, -0.013075324, -0.021980796, 0.024864959, -0.099429004, 0.0041676494, -0.1034842, 0.070528485, -0.0858032, 0.13050202, 0.0065660286, 0.012673276, -0.0136150345, -0.026453301) * input_1(0.0, 1.0);
    result += mat4(-0.057545867, -0.0204511, 0.2972485, -0.103856936, 0.039873116, -0.03804658, -0.017861677, -0.051993527, 0.105866104, -0.041406915, -0.11143288, -0.0012634797, -0.008498595, 0.021716056, -0.009516725, -0.04770642) * input_1(1.0, -1.0);
    result += mat4(0.03681514, -0.04811414, 0.267792, 0.002894097, 0.19840705, -0.06392482, -0.18283306, 0.071805835, -0.032198887, -0.02503191, 0.053839155, -0.15379964, 0.1511524, -0.11750999, -0.3163389, 0.13218878) * input_1(1.0, 0.0);
    result += mat4(0.048824146, -0.03782252, 0.008244956, 0.049040474, 0.08052797, 0.052349407, -0.030266814, 0.088977806, 0.046662457, -0.05145848, 0.008804651, 0.004364404, 0.016484186, -0.038703702, -0.031017508, 0.034984957) * input_1(1.0, 1.0);
    result += mat4(-0.03513688, -0.008517106, 0.044107426, 0.02226125, 0.24624154, -0.040931884, 0.021087416, 0.08638037, -0.11271194, 0.062026087, 0.18098262, 0.0750637, 0.0024969399, 0.20754284, -0.1470577, 0.055588823) * input_2(-1.0, -1.0);
    result += mat4(0.28852093, -0.102062516, 0.5603464, -0.13847856, 0.17874056, -0.10771322, 0.56746167, -0.1289778, 0.067303434, 0.11449666, 0.3883289, 0.22910865, 0.2415335, -0.061779622, 0.33296114, 0.14835745) * input_2(-1.0, 0.0);
    result += mat4(0.0035194121, 0.1268769, -0.15192308, -0.07043858, -0.004655434, -0.032883264, 0.02537364, -0.07279111, -0.06437208, 0.043693446, 0.25637794, -0.024366504, 0.0769532, 0.16377604, 0.26213652, -0.005821829) * input_2(-1.0, 1.0);
    result += mat4(-0.23947829, -0.11336466, 0.11429206, 0.17431563, 0.041322365, -0.110515215, 0.041772824, -0.061108578, -0.14128834, 0.013333809, 0.23613271, 0.074710645, 0.07186867, -0.17849216, -0.07075383, 0.026274465) * input_2(0.0, -1.0);
    result += mat4(0.17195651, 0.16401781, -0.03452855, 0.023721546, 0.22231485, 0.073257, -0.0052497354, 0.1196949, 0.11550411, -0.1373056, -0.08509515, -0.13899797, 0.18498212, 0.40396494, -0.03082522, 0.28753662) * input_2(0.0, 0.0);
    result += mat4(0.09579473, 0.017578477, -0.06496552, -0.029715214, 0.023191698, 0.087071314, -0.13741423, 0.14780752, -0.042445593, 0.12597838, -0.079179, 0.042887375, -0.03583375, 0.042681277, -0.039420474, 0.043544233) * input_2(0.0, 1.0);
    result += mat4(0.09926048, -0.11888938, -0.28223845, -0.1678618, -0.15622087, -0.079309955, 0.18296084, 0.12005777, 0.0009926419, 0.09546958, -0.10625862, -0.114408836, -0.025212565, 0.043363985, 0.03611493, 0.06334688) * input_2(1.0, -1.0);
    result += mat4(0.06303344, 0.08331307, 0.087975934, 0.040592503, -0.051702585, 0.00049045664, 0.0511234, -0.09116424, -0.005975775, 0.052375626, 0.07587491, 0.045458205, -0.008802412, 0.13471612, 0.0044428804, 0.166654) * input_2(1.0, 0.0);
    result += mat4(-0.113693036, 0.14539157, 0.106266506, 0.0935835, 0.072710544, -0.07076486, -0.07704554, -0.06592827, -0.20266818, 0.28363773, 0.19987704, 0.18634002, 0.017385844, 0.040798932, -0.0040548677, -0.05873331) * input_2(1.0, 1.0);
    result += mat4(0.13858347, -0.09430498, 0.0278141, -0.12407352, -0.01498665, 0.11123562, 0.026084967, -0.05772528, -0.03974218, 0.0022318962, 0.49940196, -0.007593862, 0.008552836, -0.009378549, 0.073002614, 0.018003672) * input_3(-1.0, -1.0);
    result += mat4(0.030826438, -0.053965315, -0.32014072, 0.025241867, -0.034896873, -0.17389338, -0.18418922, 0.28316435, 0.06368737, -0.08918167, 0.17072846, 0.08500413, 0.055365883, -0.01732784, 0.33893448, -0.04070449) * input_3(-1.0, 0.0);
    result += mat4(0.07989888, 0.04666651, -0.13611265, -0.18993285, 0.0029698843, 0.10565435, 0.10166203, 0.09402034, 0.020180924, -0.05568352, 0.13428555, 0.094347395, -0.075026825, -0.061313756, 0.05726768, 0.085457325) * input_3(-1.0, 1.0);
    result += mat4(-0.17324767, 0.041964732, -0.1590561, -0.07369267, 0.07765154, -0.010914236, -0.027050314, -0.019553984, -0.12040772, -0.066686794, 0.024503022, -0.031660847, 0.03013242, -0.1107681, 0.007132353, -0.042451814) * input_3(0.0, -1.0);
    result += mat4(-0.062265467, -0.09282395, 0.057698555, 0.048968315, -0.2273909, -0.20042984, -0.025761556, -0.054833215, -0.15947568, 0.03176548, -0.18282975, 0.023332866, -0.0855778, 0.10152981, -0.15651721, -0.059505265) * input_3(0.0, 0.0);
    result += mat4(0.04804324, 0.14836597, 0.12872882, 0.094709665, 0.072719134, -0.21056554, -0.121489264, 0.15575127, 0.047214206, -0.0114467405, 0.0709007, -0.022956433, 0.09282248, 0.05632286, 0.07467857, 0.09479161) * input_3(0.0, 1.0);
    result += mat4(0.09806885, -0.090433486, -0.19417818, -0.1665126, -0.008911548, -0.14340046, -0.14799288, -0.07921918, -0.08573224, -0.09633118, 0.04773476, -0.0026438062, -0.027193243, -0.1016196, -0.01835509, -0.05918236) * input_3(1.0, -1.0);
    result += mat4(-0.034363214, -0.05153224, 0.36261111, -0.033213068, 0.0025155318, -0.0038749948, -0.3037989, -0.18907927, -0.08671311, 0.0721335, 0.031689834, 0.08971504, 0.106131226, -0.06464865, 0.022948839, -0.099227205) * input_3(1.0, 0.0);
    result += mat4(-0.0629129, 0.12190601, 0.16769733, -0.06509202, 0.10686284, 0.10409321, 0.045247953, -0.11620034, 0.1457286, -0.11225473, -0.15076962, 0.09042854, 0.031986117, -0.024543175, 0.018206304, 0.19035588) * input_3(1.0, 1.0);
    result += vec4(-0.1275905, -0.08881936, 0.076239645, -0.0408563);
    return max(result, vec4(0.0));
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-1-ReLU)
//!HOOK NATIVE
//!BIND conv2d_tf
//!BIND conv2d_tf1
//!BIND conv2d_tf2
//!BIND conv2d_tf3
//!SAVE conv2d_1_tf3
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (conv2d_tf_texOff(vec2(x_off, y_off)))
#define input_1(x_off, y_off) (conv2d_tf1_texOff(vec2(x_off, y_off)))
#define input_2(x_off, y_off) (conv2d_tf2_texOff(vec2(x_off, y_off)))
#define input_3(x_off, y_off) (conv2d_tf3_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(0.07276742, 0.07117798, 0.11047902, -0.02665368, -0.033945914, 0.27882084, -0.0013890652, -0.08698146, 0.031939723, 0.086155996, -0.139797, 0.06673014, -0.16719796, 0.12279925, -0.048128888, 0.00018128651) * input_0(-1.0, -1.0);
    result += mat4(0.10807829, 0.17300612, -0.1339164, 0.16884479, -0.14735924, 0.15373547, 0.17793903, 0.109846875, 0.04638847, 0.10420141, 0.074128665, 0.023529695, 0.17413057, -0.1240173, -0.04974311, -0.03935234) * input_0(-1.0, 0.0);
    result += mat4(-0.06580409, -0.052848596, -0.17243737, -0.10894971, -0.052238565, 0.06717318, 0.08573348, 0.105059266, 0.077554435, -0.037613105, 0.29530656, 0.12931447, 0.030851243, -0.12764208, -0.0064260773, -0.039322216) * input_0(-1.0, 1.0);
    result += mat4(-0.07716932, -0.34460342, 0.032942813, 0.008337096, 0.07054127, -0.1454387, -0.1576952, 0.13380611, -0.113369666, 0.3049594, 0.047212306, -0.18916078, -0.25484493, -0.049649995, -0.01832854, 0.06109748) * input_0(0.0, -1.0);
    result += mat4(0.12152926, -0.18031462, 0.06288559, 0.19393457, 0.21813539, 0.007371435, 0.02101499, 0.1326392, -0.010231984, 0.18160956, -0.16891813, -0.07135968, -0.04510678, -0.0842231, 0.0029254642, 0.009826565) * input_0(0.0, 0.0);
    result += mat4(-0.012559644, 0.058631234, 0.0012309607, 0.047023565, 0.046234664, 0.06251161, -0.08991405, -0.117248155, 0.16520491, -0.04746399, 0.17068851, 0.12848765, 0.21038423, -0.027083544, 0.12658492, -0.028615423) * input_0(0.0, 1.0);
    result += mat4(-0.30261424, 0.09019738, -0.12793429, 0.06964581, -0.03426782, 0.12398023, 0.004575708, 0.03819718, -0.24030955, 0.28199062, 0.07072223, 0.09606835, -0.05805784, 0.1288736, 0.042118266, 0.010534452) * input_0(1.0, -1.0);
    result += mat4(-0.25190294, 0.10821807, -0.026524367, 0.18556234, -0.15665385, 0.05935704, -0.1855266, -0.049901143, -0.15042026, 0.035250206, 0.07494405, 0.1131174, -0.013355073, 0.21444312, 0.10855452, -0.13129096) * input_0(1.0, 0.0);
    result += mat4(-0.040464293, 0.18187262, -0.0750383, 0.014349462, -0.18065709, -0.047667425, 0.015629647, 0.07451717, -0.20103316, 0.08938033, -0.016353577, 0.11804049, 0.20572509, 0.027470382, 0.16188225, -0.15858838) * input_0(1.0, 1.0);
    result += mat4(-0.092502736, 0.012332295, -0.0724953, 0.057709906, 0.030117145, -0.01049449, -0.109744824, 0.06271748, 0.17268519, 0.022172593, 0.032689676, 0.07214205, -0.051073074, -0.06574677, 0.07303269, -0.03760363) * input_1(-1.0, -1.0);
    result += mat4(0.04012409, 0.12556504, -0.29071745, 0.040145926, -0.040342603, 0.16204259, -0.09022961, -0.038355406, 0.021257576, 0.04558448, 0.10352924, 0.046290163, 0.0004489797, -0.048394736, -0.11447779, -0.13574721) * input_1(-1.0, 0.0);
    result += mat4(0.013076885, 0.050173514, 0.04374841, -0.17134945, 0.056564808, 0.14873938, 0.051381238, 0.0016300011, 0.023200205, -0.023048088, 0.013418704, -0.102927886, 0.0011293591, 0.010476499, -0.13043365, 0.10638981) * input_1(-1.0, 1.0);
    result += mat4(0.01666231, -0.076179326, -0.07895197, -0.12941319, 0.07990883, 0.059041806, -0.0077777053, -0.10605993, 0.15340748, 0.06320162, -0.10340712, -0.084371515, -0.045130935, 0.15665568, -0.1072743, 0.11894221) * input_1(0.0, -1.0);
    result += mat4(0.08111273, -0.24689008, 0.0017497918, 0.10051706, 0.057605628, -0.02971529, 0.09149274, 0.019079324, 0.006013086, -0.09753708, 0.037230715, 0.021713916, 0.1951723, -0.09637297, -0.07232163, -0.07840615) * input_1(0.0, 0.0);
    result += mat4(-0.09936122, 0.03681862, -0.03871306, -0.06809391, -0.21598445, 0.15814802, -0.07023143, -0.03608685, -0.12745778, 0.020415682, 0.10543417, 0.013527398, 0.17326884, 0.021948315, 0.31592855, -0.017279968) * input_1(0.0, 1.0);
    result += mat4(0.00070817146, -0.13885897, 0.0671594, -0.27696547, 0.05353951, -0.020147754, 0.01602681, -0.07152928, 0.03235496, 0.08250993, -0.10474238, -0.06364331, 0.039215554, -0.2931661, 0.032113925, -0.020612797) * input_1(1.0, -1.0);
    result += mat4(-0.04640536, 0.05874005, 0.18968298, 0.12931487, -0.15913329, 0.065239765, -0.19362341, -0.20308793, -0.059273746, 0.08165557, 0.07107244, 0.04567653, 0.021792449, 0.12720956, -0.022240285, -0.0034064418) * input_1(1.0, 0.0);
    result += mat4(0.0078114592, 0.23749363, -0.013147781, 0.003951724, 0.085154094, -0.066393696, -0.049204882, -0.06423173, 0.07466311, 0.0593728, 0.060669467, -0.05145758, -0.078350194, -0.0014926841, 0.14068599, 0.04647857) * input_1(1.0, 1.0);
    result += mat4(0.04155515, 0.095453575, 0.0537081, 0.055615086, -0.17625609, 0.0007874676, -0.032235235, -0.1030802, -0.01743493, 0.075952515, -0.032514833, 0.10952792, -0.12796366, 0.10349249, -2.5926947e-06, -0.119021036) * input_2(-1.0, -1.0);
    result += mat4(0.06939083, 0.13409913, -0.06989555, 0.059820227, -0.059112903, 0.10823376, 0.06584576, 0.106199145, -0.050282087, -0.09478973, -0.10937606, -0.07587729, -0.25832158, -0.0511356, -0.088798404, -0.25963715) * input_2(-1.0, 0.0);
    result += mat4(-0.03900738, 0.004679601, 0.09006991, -0.12662908, 0.1228486, 0.033231836, 0.025324062, 0.05973418, -0.16139792, 0.08581562, 0.085091725, -0.1704851, 0.057869323, -0.032368153, 0.020052068, -0.089032225) * input_2(-1.0, 1.0);
    result += mat4(-0.047132917, -0.09298519, -0.036094744, -0.023602145, 0.02430988, 0.04399604, 0.061487403, -0.18166094, -0.08316254, 0.08854121, -0.13715225, -0.1813945, -0.1292899, 0.008808591, -0.08748996, 0.017255986) * input_2(0.0, -1.0);
    result += mat4(-0.009205547, -0.020633563, -0.013008853, 0.055523083, 0.063226275, 0.08633586, -0.0065116743, 0.14451388, 0.016103707, -0.15389211, -0.060189556, -0.12945691, 0.04943745, -0.27906036, 0.29145807, 0.20721242) * input_2(0.0, 0.0);
    result += mat4(0.10966631, -0.052982368, -0.15215455, -0.018767774, -0.14506811, -0.10552317, 0.12257655, 0.012954392, 0.029590765, 0.019944886, -0.067059115, 0.12438012, -0.011744523, 0.07793464, -0.085040346, -0.04336119) * input_2(0.0, 1.0);
    result += mat4(0.16317624, -0.054765556, 0.059337873, -0.12807503, -0.21815723, -0.092648104, 0.052874427, 0.022768999, -0.0076890313, -0.07637386, 0.00078173995, -0.15005976, 0.042011682, 0.19848791, -0.11914318, -0.08902803) * input_2(1.0, -1.0);
    result += mat4(0.015493758, -0.19535996, -0.06634372, -0.1554091, -0.06914291, -0.109129675, 0.018245565, 0.06634108, -0.011726983, 0.03623865, 0.109396994, -0.07813951, -0.16108938, 0.0963894, 0.06985578, -0.019929018) * input_2(1.0, 0.0);
    result += mat4(-0.011460459, -0.15077117, 0.08288506, -0.054917242, 0.12050695, -0.008533497, 0.04282647, -0.024762297, 0.025906911, -0.02519802, 0.099071585, 0.049649768, 0.0025444906, -0.12942137, -0.00075507694, -0.10787175) * input_2(1.0, 1.0);
    result += mat4(-0.07438602, 0.18648702, 0.018822886, -0.042090364, -0.074512795, 0.03782877, -0.03965869, -0.08334369, -0.05253499, -0.006701707, -0.04622607, -0.054938793, -0.20120034, 0.02426901, 0.018763164, -0.024391193) * input_3(-1.0, -1.0);
    result += mat4(-0.11794891, 0.21699287, 0.06947326, 0.05801372, 0.072195716, 0.07576547, -0.16408929, 0.07661186, -0.025988769, 0.0815456, -0.059275955, 0.097887926, -0.14771028, -0.13252638, -0.13179383, -0.13190322) * input_3(-1.0, 0.0);
    result += mat4(0.028797802, -0.1137736, 0.035494346, 0.004622374, 0.12321642, 0.013399493, -0.2118844, -0.020550145, 0.12345687, 0.07854415, -0.06865901, -0.033165295, 0.11206376, 0.032678314, -0.0910451, -0.007881075) * input_3(-1.0, 1.0);
    result += mat4(-0.12989952, 0.37665224, -0.021271879, 0.123119384, -0.01945198, 0.39999005, 0.058724333, 0.081091024, 0.045541026, 0.06531768, -0.008765646, 0.018611602, -0.0482588, -0.26305565, 0.06646173, 0.0027628387) * input_3(0.0, -1.0);
    result += mat4(0.08596846, -0.46582267, -0.043123525, 0.057038993, -0.28410384, -0.07101579, -0.16734, 0.0046207015, -0.07138207, 0.14883733, -0.03671264, 0.06604414, 0.17060056, -0.072689444, 0.0009959729, -0.0025326917) * input_3(0.0, 0.0);
    result += mat4(0.020237662, -0.050994586, -0.1855968, -0.06092584, -0.1018929, 0.119627886, -0.014098615, 0.06113265, -0.10535957, -0.042916574, -0.031292226, -0.05878511, -0.09740769, 0.11184175, -0.0022376664, 0.06621043) * input_3(0.0, 1.0);
    result += mat4(0.16884339, -0.06750478, -0.008712898, 0.14681983, 0.102293685, 0.03733718, -0.092859864, 0.26040962, -0.014514769, -0.021096893, 0.112506464, -0.0233516, 0.029515909, -0.07276906, -0.11670591, -0.18711588) * input_3(1.0, -1.0);
    result += mat4(-0.15058167, -0.11561439, 0.006796898, 0.0056290086, 0.12564462, -0.31536624, -0.10112696, -0.09506259, -0.17763512, -0.09864155, -0.054676812, -0.09349869, 0.085211396, 0.26362437, -0.03579048, -0.028095394) * input_3(1.0, 0.0);
    result += mat4(0.05919438, 0.11599126, -0.12118181, 0.08760729, 0.076120116, -0.003229206, -0.05487554, -0.018387679, -0.11861017, -0.07940897, -0.06505289, 0.025050512, -0.0066855946, 0.2120395, 0.07232122, -0.0045931023) * input_3(1.0, 1.0);
    result += vec4(-0.09466943, -0.06961699, -0.15345076, 0.06862424);
    return max(result, vec4(0.0));
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-2-ReLU)
//!HOOK NATIVE
//!BIND conv2d_1_tf
//!BIND conv2d_1_tf1
//!BIND conv2d_1_tf2
//!BIND conv2d_1_tf3
//!SAVE conv2d_2_tf
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (conv2d_1_tf_texOff(vec2(x_off, y_off)))
#define input_1(x_off, y_off) (conv2d_1_tf1_texOff(vec2(x_off, y_off)))
#define input_2(x_off, y_off) (conv2d_1_tf2_texOff(vec2(x_off, y_off)))
#define input_3(x_off, y_off) (conv2d_1_tf3_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(0.0026057789, 0.101815335, 0.1337484, -0.04066069, 0.008643491, -0.04368733, 0.11909181, 0.10747496, 0.17502815, 0.023829864, 0.031425033, 0.15998162, 0.014633256, -0.01771252, 0.13034877, -0.047408037) * input_0(-1.0, -1.0);
    result += mat4(-0.0792448, -0.07939523, 0.08427843, 0.054249633, 0.018316068, 0.023777878, 0.03394291, 0.028008392, 0.034963954, 0.09724508, 0.10778169, 0.10903569, -0.024169741, 0.0404447, 0.063016295, 0.11400915) * input_0(-1.0, 0.0);
    result += mat4(0.028269129, -0.07665776, 0.06536119, -0.039219555, 0.017478835, 0.035612356, 0.0032377576, 0.042889528, 0.0030076792, -0.07265551, -0.013799968, -0.026363242, 0.05657308, 0.288116, 0.28707343, 0.0051060803) * input_0(-1.0, 1.0);
    result += mat4(-0.021204313, -0.10778422, -0.042545177, 0.054859746, -0.0397463, -0.03254899, -0.005294054, 0.016822506, 0.111735106, -0.05751331, 0.015096689, -0.19754036, -0.003592261, 0.14142899, 0.075154155, -0.0189842) * input_0(0.0, -1.0);
    result += mat4(0.19531174, -0.030725863, -0.1320933, 0.0011044766, -0.09524643, 0.21108969, 0.22120218, 0.059489086, -0.0852058, -0.13466966, 0.032057416, -0.13009974, -0.14929092, 0.040874552, 0.08629408, 0.12543048) * input_0(0.0, 0.0);
    result += mat4(0.0454526, -0.02809321, 0.022661716, 0.1543577, -0.10845316, -0.021009928, -0.019529492, -0.02060379, -0.018488321, -0.012841485, 0.007022012, -0.009102164, 0.030902484, -0.20510665, 0.09434397, 0.1365364) * input_0(0.0, 1.0);
    result += mat4(-0.09051301, 0.08616369, -0.12909508, -0.23943436, 0.07004927, 0.008060141, 0.02682701, -0.42860076, -0.012136327, 0.0062732156, -0.00072932476, 0.0058060177, 0.11228251, 0.031291865, 0.17552143, 0.033736125) * input_0(1.0, -1.0);
    result += mat4(0.082587205, -0.17141207, -0.24391961, 0.053325307, -0.12594505, 0.041899573, 0.16912454, 0.2970736, 0.0102512725, -0.001375336, 0.0017752791, 0.011181672, 0.054309428, -0.06599581, 0.127142, 0.032401945) * input_0(1.0, 0.0);
    result += mat4(-0.086156465, 0.18054269, -0.012914455, -0.02006579, 0.07009802, -0.12397339, -0.016733965, 0.05600729, -0.0024621305, -0.004610725, 0.0017652836, -0.0080703255, -0.090607084, -0.018790603, 0.12900484, -0.13050689) * input_0(1.0, 1.0);
    result += mat4(-0.023768308, 0.027634248, 0.13435239, 0.19539046, 0.0068720467, -0.010645731, -0.039064907, 0.099188834, -0.51733667, -0.31144106, 0.24042404, -0.44965872, -0.04595439, 0.046752773, -0.10937993, 0.024423491) * input_1(-1.0, -1.0);
    result += mat4(0.006196968, 0.044980824, 0.0066093435, -0.013231173, 0.21167353, 0.17316799, 0.08613838, -0.11009366, 0.0122262, 0.178073, -0.03227253, 0.048564713, -0.015098572, 0.07154866, -0.11650491, -0.07406346) * input_1(-1.0, 0.0);
    result += mat4(-0.045764588, 0.06370839, -0.12255722, 0.09234466, -0.39723647, -0.20680197, -0.0016355679, 0.012329408, 0.054246597, 0.17462482, 0.14370081, -0.06080291, 0.014805095, -0.16406493, -0.14106286, 0.063837215) * input_1(-1.0, 1.0);
    result += mat4(-0.09185381, 0.0032875815, 0.063150086, 0.119067065, 0.10504788, -0.035678227, -0.048844393, -0.18702084, -0.1796375, 0.4069601, 0.2711185, 1.5532187, 0.035156947, 0.045319784, -0.040182512, -0.1311477) * input_1(0.0, -1.0);
    result += mat4(0.21412161, 0.064740725, 0.018572798, -0.25141117, 0.025245538, -0.08337633, 0.0014140332, -0.035437346, -0.1367562, 0.16214126, -0.035433646, 0.2414229, -0.0663671, -0.19690228, -0.40053704, -0.28526172) * input_1(0.0, 0.0);
    result += mat4(0.0008030063, -0.15509994, 0.04302935, 0.13996305, 0.013767975, 0.0047909934, -0.00080035534, 0.01062904, 0.037657227, -0.1425546, 0.016263558, -0.026373537, -0.063646875, -0.14033513, -0.15466273, -0.03371602) * input_1(0.0, 1.0);
    result += mat4(0.10390038, 0.023415366, 0.064368084, 0.044417612, 0.013278176, 0.02103224, -0.0003177343, 0.12995142, -0.09027966, -0.1796633, 0.22671908, -1.2318851, 0.15602125, -0.04400669, -0.046997357, 0.16060632) * input_1(1.0, -1.0);
    result += mat4(0.13249236, -0.15119651, -0.026442721, -0.3087731, -0.05147674, 0.062472705, -0.054316714, 0.11091229, 0.082206674, 0.10113331, -0.066164486, -0.06511562, 0.23952262, -0.04873215, -0.11593162, 0.014474209) * input_1(1.0, 0.0);
    result += mat4(-0.054624442, 0.09837396, -0.023887318, -0.087079436, 0.052318305, 0.040117852, -0.007764728, -0.0033023322, -0.04849081, 0.011218498, -0.0002454716, 0.0016940172, 0.13475966, 0.015536176, -0.17510499, 0.060867887) * input_1(1.0, 1.0);
    result += mat4(0.08852688, 0.0065320833, -0.07416163, -0.12901202, 0.01635221, -0.09003048, -0.22219034, -0.15021864, -0.049880948, 0.0076317796, 0.07361063, -0.06522187, -0.07436036, 0.09360805, 0.15351728, 0.36896345) * input_2(-1.0, -1.0);
    result += mat4(0.026403122, -0.11223601, 0.016671624, -0.016130075, 0.014850819, 0.006561735, -0.001410922, -0.057794165, 0.014028074, -0.02315534, 0.04029165, -0.019319914, 0.1906465, 0.2327577, 0.12953898, 0.07078557) * input_2(-1.0, 0.0);
    result += mat4(0.08354098, -0.113861434, -0.076586455, 0.07297453, -0.14498551, 0.1868085, 0.020957759, 0.05740636, -0.027449857, -0.020434728, 0.052703194, 0.036774106, 0.03088789, -0.053143274, 0.14195873, -0.006154728) * input_2(-1.0, 1.0);
    result += mat4(-0.10099569, 0.024954135, -0.07566236, 0.024498563, 0.1670291, 0.053614113, -0.16992684, 0.08738716, 0.007165542, -0.14882298, 0.044400763, 0.019957768, 0.022515588, -0.23843795, 0.1253593, 0.16553237) * input_2(0.0, -1.0);
    result += mat4(0.21477658, -0.10235449, -0.13644627, -0.32790747, 0.14473605, 0.23833556, -0.37748256, -0.08210719, -0.01653268, 0.11151117, 0.0480905, 0.17304851, -0.030317727, 0.12119864, -0.1365246, -0.050523564) * input_2(0.0, 0.0);
    result += mat4(0.010095751, -0.0075145704, -0.011032866, -0.003675045, -0.08703423, 0.20540461, 0.024291312, 0.009071102, -0.0765602, -1.4075127, 0.065921694, -0.034492534, 0.056931842, 0.027957655, -0.032613125, -0.08863552) * input_2(0.0, 1.0);
    result += mat4(-0.16630542, 0.0010045363, -0.08275184, 0.20555677, -0.042205226, -0.07865963, -0.0027988728, 0.11277846, -0.054579884, 0.008503716, 0.008745119, -0.036390856, -0.067479745, 0.00975302, -0.0166278, 0.38888308) * input_2(1.0, -1.0);
    result += mat4(0.0995159, 0.014550036, -0.06576567, 0.024183115, -0.04637013, 0.053434703, 0.075435326, 0.20495443, 1.5621278, -0.035756476, 0.97565794, 1.7169465, 0.024388433, 0.20670703, -0.010535382, 0.1645216) * input_2(1.0, 0.0);
    result += mat4(-0.035333145, 0.010451847, -0.0031777963, -0.058406092, 0.009375108, -0.20775157, 0.04016833, -0.061612695, -0.83018523, -0.020069005, -0.008929127, -0.3244913, -0.043441933, 0.02115468, 0.04415354, 0.03460062) * input_2(1.0, 1.0);
    result += mat4(0.12395686, 0.018755682, -0.041592203, -0.23186813, 0.11068196, -0.004347231, -0.018881205, -0.108283594, 0.035416592, 0.059039954, -0.08150484, 0.13377911, 0.0114160245, -0.07585967, 0.03649937, -0.0074927593) * input_3(-1.0, -1.0);
    result += mat4(-0.13305108, -0.030527808, 0.07589835, 0.040325068, 0.032246362, -0.0074592466, -0.055953808, -0.015958367, 0.020759346, 0.011136174, 0.01566338, 0.056839425, 0.06492539, 0.019157762, -0.05404248, 0.06377561) * input_3(-1.0, 0.0);
    result += mat4(-0.13958983, -0.31427026, 0.049909994, -0.0052590366, 0.10988256, -0.17399302, 0.0021944747, 0.0709958, -0.009592231, -0.07487922, -0.011395506, 0.013894969, 0.057040147, 0.2429482, -0.030149393, 0.004779456) * input_3(-1.0, 1.0);
    result += mat4(-0.014134958, 0.03874535, 0.01830042, 0.16150123, 0.065855704, -0.011226538, -0.0068548205, -0.1813189, 0.034930576, -0.030720936, -0.056471664, -0.15740672, -0.0009838418, 0.021557063, -0.09378302, 0.056748144) * input_3(0.0, -1.0);
    result += mat4(0.08369976, -0.104498416, -0.1633464, -0.25117555, -0.047450516, -0.028658627, 0.016529994, -0.07096349, -0.11649223, -0.3558239, -0.4304577, -0.2393651, -0.046775986, -0.00710287, -0.030435171, 0.031870816) * input_3(0.0, 0.0);
    result += mat4(0.03021044, 0.09070294, -0.058598038, -0.07781458, -0.026269874, -0.08696307, -0.076425314, -0.110576116, 0.007897748, -0.16005276, -0.09446548, 0.10464442, -0.093469486, 0.08810369, 0.09413875, -0.12421029) * input_3(0.0, 1.0);
    result += mat4(0.00015640073, 0.0050471183, 0.04627479, 0.0009230157, -0.031488743, 0.01400526, -0.010889338, -0.21289241, 0.05809138, 0.035591666, 0.015358688, 0.07693986, -0.055975433, -0.026455455, 0.009142158, 0.15244198) * input_3(1.0, -1.0);
    result += mat4(-0.09706567, -0.023475476, 0.01628738, 0.29582182, -0.020929564, 0.028308537, -0.025446167, 0.025277657, -0.00973665, 0.007577166, -0.09764584, 0.032216556, 0.049013324, -0.0827353, -0.06869119, -0.041042134) * input_3(1.0, 0.0);
    result += mat4(-0.028538203, 0.07765585, 0.019083701, -0.023734335, 0.007102023, 0.08030655, -0.036062974, 0.03947162, 0.025124416, 0.091504954, -0.08813411, -0.049872957, 0.00048567937, 0.065640286, -0.053202946, -0.05471588) * input_3(1.0, 1.0);
    result += vec4(0.012696836, -0.049014997, 0.13514452, -0.057800766);
    return max(result, vec4(0.0));
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-2-ReLU)
//!HOOK NATIVE
//!BIND conv2d_1_tf
//!BIND conv2d_1_tf1
//!BIND conv2d_1_tf2
//!BIND conv2d_1_tf3
//!SAVE conv2d_2_tf1
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (conv2d_1_tf_texOff(vec2(x_off, y_off)))
#define input_1(x_off, y_off) (conv2d_1_tf1_texOff(vec2(x_off, y_off)))
#define input_2(x_off, y_off) (conv2d_1_tf2_texOff(vec2(x_off, y_off)))
#define input_3(x_off, y_off) (conv2d_1_tf3_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(0.070307195, 0.13373801, 0.069567, 0.047031708, -0.024729652, 0.043411992, -0.042935193, -0.029598841, 0.2506372, -0.042484473, -0.045640647, 0.33050722, 0.1586272, 0.07737707, 0.0010389774, -0.15889019) * input_0(-1.0, -1.0);
    result += mat4(-0.021587105, -0.100466736, 0.035739623, -0.052982736, -0.028628718, -0.016438017, -0.11511868, -0.053654198, -0.12953022, -0.08240269, -0.027871665, -0.09898355, 0.042088307, -0.16472109, -0.009805779, 0.019599538) * input_0(-1.0, 0.0);
    result += mat4(-0.063951336, 0.013475559, -0.03888654, 0.03941254, -0.008732591, 0.0102710305, -0.025188234, -0.014883647, -0.036719877, -0.011040009, -0.019287938, 0.051828813, -0.018974079, 0.0065073804, 0.044989433, -0.0067240787) * input_0(-1.0, 1.0);
    result += mat4(-0.08285847, -0.17100185, -0.07319144, 0.0754934, 0.20255004, -0.100261316, 0.17419924, -0.037557736, 0.051447082, 0.15427536, 0.10724955, 0.09050741, 0.10628278, -0.17223048, -0.050852757, -0.011116247) * input_0(0.0, -1.0);
    result += mat4(-0.11551516, -0.017432159, 0.14403671, 0.062957376, -0.014058764, -0.0031063952, 0.0128295515, 0.10805012, -0.053590607, 0.09977747, 0.16880867, -0.04109106, -0.054851107, -0.036982507, -0.0383916, -0.25251085) * input_0(0.0, 0.0);
    result += mat4(0.023999784, 0.027292734, -0.046464335, -0.021956768, 0.044488437, 0.024131179, 0.03245174, -0.027136462, -0.024405846, -0.03903136, -0.01691841, -0.020058477, -0.02948982, 0.13292092, -0.10048238, 0.021229722) * input_0(0.0, 1.0);
    result += mat4(-0.08028961, -0.11509826, -0.08086421, -0.058921136, 0.029369555, -0.13351402, 0.21397083, 0.14061372, -0.0059725167, -0.0018545293, -0.038292542, -0.0101096, 0.1559371, -0.096871465, -0.13147728, 0.3318942) * input_0(1.0, -1.0);
    result += mat4(0.20541668, 0.009220236, -0.15309489, 0.16113979, 0.005166287, -0.12362425, -0.33803785, 0.08330327, 0.0021191826, 0.005069627, 0.010565214, -0.0015725874, -0.077388935, -0.029397853, 0.12230771, -0.033545155) * input_0(1.0, 0.0);
    result += mat4(0.063324325, 0.07578324, 0.041905433, -0.02508907, 0.03221247, 0.035303228, -0.017672593, -0.13589846, -0.015043021, -0.0032871924, -0.014893798, 0.00058185105, -0.049892455, -0.0072716135, -0.12128469, -0.059625812) * input_0(1.0, 1.0);
    result += mat4(-0.0044247354, 0.075793885, 0.0040495647, -0.0779846, -0.050537955, 0.0053244676, 0.035784744, -0.13164632, -0.33730057, -1.0862324, 0.118855946, 0.003231053, -0.0068093105, -0.018244201, -0.05667493, -0.08536349) * input_1(-1.0, -1.0);
    result += mat4(-0.018157428, 0.057863288, -0.09888558, -0.15365295, 0.22781439, -0.02166417, -0.07169604, -0.025005052, 0.07117844, -0.19761729, 0.03548077, -0.19668338, 0.0375756, 0.05665991, 0.008323602, -0.0014227717) * input_1(-1.0, 0.0);
    result += mat4(0.056889832, 0.044933047, -0.07032307, -0.0068339645, 0.16571085, 0.22920628, -0.022075845, 0.38318947, -0.017539548, -0.08012551, -0.02515207, -0.0025935122, 0.06301875, 0.057936303, 0.018172376, 0.047798585) * input_1(-1.0, 1.0);
    result += mat4(0.093225084, -0.05959667, 0.053377535, 0.03418434, 0.084588446, -0.19368486, 0.069671825, 0.21839328, 0.20837055, 0.049825232, -0.23814365, -0.10259756, -0.065724045, -0.077920735, 0.06939123, -0.20802538) * input_1(0.0, -1.0);
    result += mat4(-0.20981008, 0.1792686, 0.04506339, -0.0595483, -0.0013666913, -0.1630449, 0.1962993, 0.14626887, 0.08059706, -0.32652563, -0.15527765, 0.08922594, -0.087386355, -0.19606355, -0.2748438, 0.0020372323) * input_1(0.0, 0.0);
    result += mat4(-0.12605272, 0.12828758, -0.09421635, 0.11753786, -0.07274937, 0.14575648, -0.059629895, -0.23300435, -0.13954778, 0.01706596, 0.054936543, 0.06913864, 0.08663725, 0.016808273, -0.0041556773, 0.010769383) * input_1(0.0, 1.0);
    result += mat4(0.03801456, -0.10455882, 0.05372109, 0.10972174, -0.0857084, 0.08759705, -0.090016805, -0.035243917, -0.029633401, -0.13617271, -0.13441749, 0.033575427, -0.043487154, -0.043779846, 0.16843155, 0.120696954) * input_1(1.0, -1.0);
    result += mat4(-0.06295597, 0.12470182, 0.37976772, 0.08749575, -0.018043311, -0.11172362, 0.016054153, -0.065443076, -0.051026225, 0.29912996, -0.031005815, -0.09150422, -0.07097318, 0.030605106, -0.15608035, 0.23104574) * input_1(1.0, 0.0);
    result += mat4(0.060664404, 0.013406712, 0.09266076, -0.014358709, 0.026799105, -0.033568703, -0.04672009, 0.038491584, 0.039641574, -0.0013771063, -0.00642024, -0.0416514, 0.036189113, 0.08075221, 0.024859726, 0.0032428214) * input_1(1.0, 1.0);
    result += mat4(-0.07296356, 0.04329153, 0.122865856, 0.053115588, 0.027602496, -0.12646504, 0.058142193, -0.13713837, -0.024159713, 0.024955172, 0.07265427, 0.033972647, 0.118734956, 0.07144275, -0.045429416, -0.030244663) * input_2(-1.0, -1.0);
    result += mat4(0.00075845316, -0.051612493, 0.013668885, -0.03142069, 0.09361014, 0.037898973, 0.11162024, 0.09616152, 0.10760948, 0.016919645, -0.05255311, -0.01808386, -0.019122768, -0.16149685, -0.051348414, -0.06767045) * input_2(-1.0, 0.0);
    result += mat4(-0.012812724, -0.07248821, 0.014111857, -0.049787942, 0.06315828, 0.041948143, -0.06701703, -0.074214615, -0.08971058, 0.016010711, -0.02216667, 0.03145399, -0.11577584, -0.00015987638, 0.029264389, -0.09754303) * input_2(-1.0, 1.0);
    result += mat4(-0.022947175, 0.080252476, -0.13639489, -0.07717502, -0.15675455, -0.07694474, -0.23504645, -0.14164095, 0.007913415, 0.15320197, 0.022432784, -0.029816847, -0.021519627, -0.2221073, 0.022969361, -0.057585645) * input_2(0.0, -1.0);
    result += mat4(-0.1517598, -0.16076177, -0.14233981, 0.048928633, 0.16371067, -0.037707344, 0.22063741, -0.08028283, 0.024339918, -0.111882865, -0.022027636, -0.10201751, 0.0019472148, 0.0034293756, 0.15983255, -0.06355135) * input_2(0.0, 0.0);
    result += mat4(0.12638247, 0.055071283, 0.04306408, -0.00019089498, -0.0002900114, 0.2728187, -0.06313882, 0.10898575, -0.011311803, 0.17529671, 0.039527375, 0.14336424, 0.023266844, -0.033865664, 0.014438478, 0.0855147) * input_2(0.0, 1.0);
    result += mat4(-0.06501137, -0.0071462495, -0.22894473, -0.23125637, -0.009119396, 0.04334111, 0.05080065, 0.053861428, -0.21618111, -0.42315882, 0.28441626, 0.26867646, -0.089659356, -0.17100957, -0.17521158, 0.032921918) * input_2(1.0, -1.0);
    result += mat4(0.075242355, 0.0740864, 0.018708132, -0.016443433, -0.11686519, -0.009908035, -0.011508181, 0.12865353, -0.3405035, 0.6748618, -1.9279525, -4.1466203, 0.163334, 0.030876696, -0.11502635, -0.07056249) * input_2(1.0, 0.0);
    result += mat4(0.018357059, 0.048708234, 0.063869976, 0.04589818, -0.1095241, 0.0669274, 0.045623876, -0.051336925, 0.45690963, -1.0685887, -0.26922855, -0.6553122, 0.010732097, 0.031652234, -0.048706487, 0.046074428) * input_2(1.0, 1.0);
    result += mat4(0.09252309, 0.014067363, 0.0013758021, -0.1045343, -0.042693924, 0.001662234, -0.11027093, 0.071575746, -0.052435122, 0.03198923, -0.0056747515, 0.02951456, -0.027271712, 0.07907179, 0.11664502, -0.02633668) * input_3(-1.0, -1.0);
    result += mat4(-0.12931302, 0.03912087, 0.036348682, 0.012225284, -0.039575677, 0.09845901, -0.058239106, -0.014431651, -0.0020772365, -0.018854503, 0.056999248, 0.024313262, 0.10841675, -0.08915376, 0.14432195, 0.06096653) * input_3(-1.0, 0.0);
    result += mat4(-0.0017220443, 0.07328074, -0.028188344, 0.03290684, 0.005253337, -0.027485842, -0.047907107, -0.0027033165, -0.01139744, -0.06467313, 0.007866033, -0.055536337, 0.0071981354, -0.03423774, -0.010904172, -0.053811476) * input_3(-1.0, 1.0);
    result += mat4(0.00096571114, -0.06181393, -0.2558187, 0.026717693, 0.14374566, 0.061290845, -0.038273558, 0.13924417, -0.016459072, 0.039339744, -0.062693544, -0.04382596, -0.046873946, -0.07521505, -0.15629472, -0.030600747) * input_3(0.0, -1.0);
    result += mat4(-0.028608032, 0.06420166, 0.2787423, -0.014231416, 0.1251309, 0.11958136, 0.06797086, 0.06272129, -0.14794609, 0.00285738, -0.18463702, 0.18040498, 0.008532962, 0.1413957, -0.093850434, -0.10067666) * input_3(0.0, 0.0);
    result += mat4(0.025904998, 0.018056478, 0.08978222, 0.08669836, 0.050953504, 0.05298031, -0.032556586, 0.089046925, 0.08823454, 0.09443003, -0.016752161, -0.032033708, 0.054793525, -0.038482632, 0.08349578, -0.05223212) * input_3(0.0, 1.0);
    result += mat4(0.06986398, -0.022340722, -0.16861507, 0.10294943, 0.07706576, 0.048259202, -0.1497688, 0.011103634, 0.014586731, 0.03925432, 0.05581627, -0.116200924, 0.032281548, -0.066065036, -0.048237305, 0.09637613) * input_3(1.0, -1.0);
    result += mat4(0.10083602, 0.004650302, -0.13423099, 0.015972948, 0.031591143, -0.050393887, -0.09550733, -0.04849414, -0.031065619, -0.019177135, -0.16248642, -0.07088962, -0.014632206, 0.09449207, -0.16125602, -0.0006428876) * input_3(1.0, 0.0);
    result += mat4(0.023856806, 0.06195646, -0.057713427, -0.006214797, 0.033832364, -0.045733027, -0.09834399, 0.018048543, 0.09996382, 0.043121625, 0.11690634, 0.030671813, 0.06369074, 0.094699256, 0.030243648, 0.06066962) * input_3(1.0, 1.0);
    result += vec4(0.07143877, 0.0125266155, 0.07257966, 0.078956135);
    return max(result, vec4(0.0));
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-2-ReLU)
//!HOOK NATIVE
//!BIND conv2d_1_tf
//!BIND conv2d_1_tf1
//!BIND conv2d_1_tf2
//!BIND conv2d_1_tf3
//!SAVE conv2d_2_tf2
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (conv2d_1_tf_texOff(vec2(x_off, y_off)))
#define input_1(x_off, y_off) (conv2d_1_tf1_texOff(vec2(x_off, y_off)))
#define input_2(x_off, y_off) (conv2d_1_tf2_texOff(vec2(x_off, y_off)))
#define input_3(x_off, y_off) (conv2d_1_tf3_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(-0.03838413, 0.0050795195, 0.034024097, -0.011011398, 0.032951515, 0.045649335, 0.034809943, 0.019752705, -0.3973539, 0.01563789, -0.13246287, -0.03057794, -0.005532861, 0.010398784, -0.062043242, -0.014371584) * input_0(-1.0, -1.0);
    result += mat4(-0.050024252, -0.020136496, -0.1970932, -0.08873938, 0.01944947, -0.039260767, 0.10044625, -0.031206813, 0.20972194, -0.20864375, 0.11576278, -0.0315183, 0.031003794, -0.008069182, 0.034239285, -0.08652148) * input_0(-1.0, 0.0);
    result += mat4(-0.030986004, -0.095077686, -0.10617655, -0.05326548, 0.019661916, -0.0007541828, 0.105092295, 0.02451271, -0.041173536, -0.019934433, -0.08837637, -0.009341748, -0.019961411, 0.0005593135, 0.032484677, 0.060679037) * input_0(-1.0, 1.0);
    result += mat4(0.039689463, -0.1984717, -0.034034565, 0.048100796, -0.021718377, 0.06948072, -0.12344343, 0.0358373, -0.0944598, 0.03428037, -0.053085953, -0.16559282, 0.05203182, 0.09796633, 0.10879341, -0.18073933) * input_0(0.0, -1.0);
    result += mat4(-0.065767825, -0.15564986, 0.06747605, 0.1380962, 0.24616897, -0.078793444, 0.1054549, 0.041068755, 0.04244857, 0.03433084, -0.006716748, 0.20007761, 0.102306694, 0.06008362, -0.0855739, -0.03292941) * input_0(0.0, 0.0);
    result += mat4(-0.030465502, 0.025050042, 0.24471727, 0.065479405, 0.14599004, 0.0707944, 0.011061294, 0.053685397, -0.010542853, -0.028407458, 0.009700567, -0.03408128, -0.009402542, -0.019119905, 0.07693997, 0.11285516) * input_0(0.0, 1.0);
    result += mat4(0.095465705, -0.18823549, 0.067945644, -0.14229377, 0.016524415, 0.0584648, -0.08309203, -0.112092815, 0.0067944787, -0.015241505, 0.009095356, 0.034790907, 0.05352848, -0.00988512, -0.104622476, 0.13127169) * input_0(1.0, -1.0);
    result += mat4(-0.13725534, 0.12068697, -0.006650345, -0.054039463, -0.019695848, -0.06755705, 0.15394466, -0.013480153, 0.017033614, -0.0038523052, -0.02024376, -0.023452552, 0.17187183, -0.03898292, 0.0717124, 0.08568848) * input_0(1.0, 0.0);
    result += mat4(0.054643672, 0.010248893, 0.09126656, -0.000995356, -0.027091848, -0.02425936, -0.09758533, -0.05814822, 0.0003982085, -0.0126631465, 0.0015834963, 0.008550454, -0.040456064, -0.12732111, 0.036752097, -0.041585915) * input_0(1.0, 1.0);
    result += mat4(0.007011619, 0.12796673, 0.05292813, 0.14691871, -0.036434453, 0.022391196, -0.018736774, -0.16065693, -0.48159418, 0.4611799, -0.20380487, 0.8014474, 0.026968153, 0.020472957, 0.0069461535, 0.051014293) * input_1(-1.0, -1.0);
    result += mat4(-0.033128608, -0.023279013, -0.1393932, 0.050033394, -0.01891035, -0.041202843, 0.33804494, 0.017450191, 0.048265204, 0.08388862, -0.30097458, -0.031784512, -0.029775096, 0.005644324, -0.104174696, -0.030891128) * input_1(-1.0, 0.0);
    result += mat4(0.025311856, -0.04988292, 0.18216486, -0.02892821, 0.08691037, 0.11854427, 0.24443267, 0.0007147769, -0.05338647, 0.0037541832, -0.00489882, 0.0029628954, -0.0019338093, 0.030821446, -0.002219131, 0.037382025) * input_1(-1.0, 1.0);
    result += mat4(0.102787815, 0.020322192, 0.037090294, 0.0890755, -0.09136622, 0.06384972, -0.04340696, -0.06668454, -0.38727707, -0.58834946, -0.02538016, -0.23401809, 0.05818986, -0.05473755, 0.029972535, -0.0492625) * input_1(0.0, -1.0);
    result += mat4(0.028748062, -0.07732278, -0.05767324, -0.1354429, 0.08191301, -0.0008001649, 0.08942337, 0.23541814, 0.02801054, -0.119674, -0.1328939, 0.040201847, 0.016049722, 0.08500842, 0.26575083, -0.22308765) * input_1(0.0, 0.0);
    result += mat4(0.074721135, -0.12685783, 0.25751323, -0.0641275, -0.043351103, -0.006004627, -0.01223608, 0.000790646, 0.011695447, -0.002988102, -0.13573872, 0.07075019, -0.045969673, -0.051747575, 0.20309813, -0.06009126) * input_1(0.0, 1.0);
    result += mat4(-0.07474828, 0.012081241, -0.022658441, -0.019430637, -0.033354245, 0.005425546, -0.010004504, 0.06225975, 0.045642927, 0.19118936, 0.12651229, 0.36350408, -0.043318443, 0.14590181, -0.028661584, -0.1894673) * input_1(1.0, -1.0);
    result += mat4(0.043549243, 0.15615536, 0.034707237, -0.039936043, -0.014148899, -0.005080638, 0.028198605, -0.0026774206, -0.011928597, -0.035693966, -0.1799261, -0.12775682, -0.15386415, 0.029920433, 0.0125871375, -0.22441669) * input_1(1.0, 0.0);
    result += mat4(0.034467768, 0.04203543, 0.17906217, 0.057816822, 0.005218551, 0.0419144, -0.04052732, -0.038930863, -0.06032957, 0.020681396, -0.092461504, -0.014477717, -0.04014311, 0.066483945, -0.041368883, 0.122424275) * input_1(1.0, 1.0);
    result += mat4(-0.03662342, 0.07334569, -0.035633683, -0.006441626, -0.014256468, -0.006261962, -0.012012625, -0.0396691, -0.052793417, 0.03899939, 0.00024675915, -0.0018111438, 0.01696916, -0.09192059, -0.0831972, 0.23360614) * input_2(-1.0, -1.0);
    result += mat4(-0.07150447, 0.060331333, -0.10097632, 0.026219416, -0.042102154, 0.051239762, -0.12295568, 0.11924748, -0.023808599, 0.0768104, 0.08227738, -0.10778134, 0.06803534, -0.0023604252, 0.06483551, -0.08510193) * input_2(-1.0, 0.0);
    result += mat4(0.00387696, -0.04022822, -0.046177167, -0.008004609, 0.09117363, 0.14819661, 0.16234727, 0.034579825, 0.011645447, -0.08636015, -0.102855645, -0.009012852, -0.07513519, -0.0377851, 0.0022784548, 0.032502856) * input_2(-1.0, 1.0);
    result += mat4(0.15266146, 0.17935356, 0.017020082, 0.19525573, -0.005572913, 0.07319548, 0.016067052, 0.047539096, -0.15115815, -0.007248874, -0.20628467, 0.109141596, 0.07470253, -0.054450575, -0.017883934, 0.20752203) * input_2(0.0, -1.0);
    result += mat4(0.014325643, 0.09760466, -0.023532309, -0.071483664, 0.17309904, -0.06096046, -0.043374658, 0.0643112, -0.3974897, -0.015034302, 0.1785905, -0.013686064, 0.062164992, 0.086802654, -0.20308103, 0.14185798) * input_2(0.0, 0.0);
    result += mat4(-0.087869085, 0.0029250777, 0.17170438, -0.04444704, 0.076114625, -0.017498273, 0.1780213, -0.09403273, 0.19951697, 0.05622719, 0.05595735, 0.007181688, 0.032286163, 0.0015607, -0.05104583, 0.09518525) * input_2(0.0, 1.0);
    result += mat4(-0.0072505483, -0.09734684, -0.0011312085, -0.20904694, -0.04836528, -0.0044766413, -0.033436358, -0.17901137, 0.09992518, 0.44250914, 0.4141942, -0.1674104, 0.052378587, 0.03875852, -0.039631028, 0.033352427) * input_2(1.0, -1.0);
    result += mat4(-0.013143436, -0.09855061, -0.0934148, -0.4457885, -0.00892056, -0.0928058, -0.09689074, -0.17544869, -2.691838, -0.75971764, 0.2863674, -0.39380902, -0.031950068, 0.009758173, 0.054043733, 0.08569884) * input_2(1.0, 0.0);
    result += mat4(0.035652276, -0.004570745, 0.05855534, -0.022621805, 0.07022791, -0.025894098, -0.0338428, 0.08110219, -0.04247245, 0.04263083, -0.31375617, 0.069611505, -0.032968853, -0.040151313, -0.111764915, -0.08003809) * input_2(1.0, 1.0);
    result += mat4(-0.04384983, -0.0146688195, -0.039832905, -0.09977306, -0.040785756, 0.034567043, 0.087318845, -0.13093366, -0.021860983, 0.018488307, -0.045774184, 0.1279245, -0.04987672, 0.16691282, -0.07326105, 0.114854) * input_3(-1.0, -1.0);
    result += mat4(0.0299237, -0.038651723, 0.033367522, -0.103986815, 0.011607045, 0.16673514, 0.13514258, -0.002477545, -0.050797265, -0.06267026, -0.17036822, 0.08533275, 0.05735021, 0.08181658, 0.026924945, 0.058481608) * input_3(-1.0, 0.0);
    result += mat4(0.1404218, 0.10004309, -0.11340072, -0.034649014, -0.07496415, 0.022625284, 0.04843495, -0.01939816, -0.030329114, -0.021472156, -0.028771933, -0.024323786, -0.16980493, -0.0772272, 0.17200992, 0.04639422) * input_3(-1.0, 1.0);
    result += mat4(0.06775109, 0.03013145, -0.026669031, 0.010628012, 0.05897227, 0.023938403, -0.10620177, 0.114600495, 0.18840745, -0.005294094, 0.044916123, 0.09987664, 0.09284796, -0.030228123, 0.067668945, 0.17197087) * input_3(0.0, -1.0);
    result += mat4(0.25470152, 0.16616885, -0.021741053, 0.26509142, 0.11025607, 0.0911757, -0.037609085, 0.42276788, 0.118431196, -0.031924356, -0.107196815, -0.1430535, 0.2885903, 0.18546008, 0.009273382, -0.08717107) * input_3(0.0, 0.0);
    result += mat4(0.025504582, 0.027338432, -0.032417, 0.056958817, -0.01729428, 0.1969391, -0.31730542, 0.11641338, -0.093021885, -0.009152561, 0.21939042, -0.08462712, 0.033526484, -0.020554733, -0.06958257, -0.005773576) * input_3(0.0, 1.0);
    result += mat4(-0.056586545, -0.048241302, 0.009944649, 0.087693535, -0.038979102, -0.012853109, -0.009932855, 0.022500928, -0.04290489, 0.013701127, 0.03597865, 0.14485934, -0.08657927, -0.079865254, 0.045985695, -0.013239548) * input_3(1.0, -1.0);
    result += mat4(0.037263174, -0.025478419, -0.036904786, 0.09657611, -0.00713054, -0.023118034, 0.029970912, 0.15125903, -0.04063913, 0.005412956, -0.015191793, -0.4975212, 0.046640947, -0.058466483, -0.0005831105, -0.069444716) * input_3(1.0, 0.0);
    result += mat4(0.00030518993, -0.08585776, -0.027153108, -0.14614065, -0.020132551, -0.03194161, -0.0063705235, -0.10128814, 0.01332634, -0.0040180217, 0.115830295, 0.019739822, 0.002111535, -0.023262795, -0.011215958, -0.03596182) * input_3(1.0, 1.0);
    result += vec4(-0.05933246, 0.017510898, 0.044368863, -0.0030620643);
    return max(result, vec4(0.0));
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-2-ReLU)
//!HOOK NATIVE
//!BIND conv2d_1_tf
//!BIND conv2d_1_tf1
//!BIND conv2d_1_tf2
//!BIND conv2d_1_tf3
//!SAVE conv2d_2_tf3
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (conv2d_1_tf_texOff(vec2(x_off, y_off)))
#define input_1(x_off, y_off) (conv2d_1_tf1_texOff(vec2(x_off, y_off)))
#define input_2(x_off, y_off) (conv2d_1_tf2_texOff(vec2(x_off, y_off)))
#define input_3(x_off, y_off) (conv2d_1_tf3_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(-0.011199984, -0.07800405, -0.13906331, -0.0751598, -0.037876677, 0.014638386, 0.020585956, -0.06764913, 0.089692935, 0.4137723, -0.102208674, 0.08053099, -0.10287008, -0.0077736233, 0.013149949, -0.14374422) * input_0(-1.0, -1.0);
    result += mat4(-0.17694174, -0.009727288, 0.047226775, 0.060701817, -0.016892428, -0.09464112, 0.028320804, -0.093504556, 0.097734444, 0.11427946, -0.028902566, -0.1966306, -0.117770545, -0.35250074, 0.03980065, 0.002081253) * input_0(-1.0, 0.0);
    result += mat4(0.062348988, -0.06958646, -0.095302336, -0.039341904, -0.004310938, 0.0047374927, 0.09243618, -0.01987157, 0.03638282, 0.04600398, 0.11771818, -0.0069662365, 0.17595686, -0.035857696, -0.1950951, -0.119491056) * input_0(-1.0, 1.0);
    result += mat4(0.010917941, 0.22529756, 0.0100058485, 0.014526414, 0.054218885, 0.022736147, -0.052395046, 0.024477344, -0.07678104, -0.06068666, -0.5358235, -0.056800418, 0.07964208, -0.0025110915, -0.05616052, 0.034404922) * input_0(0.0, -1.0);
    result += mat4(-0.15904209, -0.045683473, 0.13283728, 0.23098402, -0.033906233, 0.19099839, 0.011518243, -0.039237153, -0.019818045, 0.073454864, 0.020442702, 0.032614317, -0.038189754, -0.18745118, 0.06309174, 0.12767845) * input_0(0.0, 0.0);
    result += mat4(-0.021378355, -0.08418172, 0.13236517, -0.101340435, -0.03580681, 0.053802103, 0.1258127, -0.054856934, 0.0046647727, 0.010475218, 0.034229856, 0.016668245, 0.074935526, 0.087926425, -0.060542513, 0.08000915) * input_0(0.0, 1.0);
    result += mat4(-0.023626152, -0.046172492, -1.0847486, 0.0020641251, -0.039906602, -0.11663138, 0.065578714, 0.006916366, -0.007488989, 0.0027274853, -0.19100083, -0.005045794, 0.039555542, -0.0010356782, -0.21591704, -0.071857214) * input_0(1.0, -1.0);
    result += mat4(-0.2888712, 0.09492215, -0.037779953, -0.007109806, -0.022707853, 0.0607045, -0.12340424, 0.029177561, 0.00034880874, -0.00082074024, -0.025978673, -0.0060665915, 0.045699302, 0.022508308, -0.008656626, 0.010771947) * input_0(1.0, 0.0);
    result += mat4(-0.050254263, -0.060428865, -0.13709536, -0.028940747, -0.028248746, 0.008484162, 0.0067645703, 0.057307065, 0.0067763557, 0.001789829, -0.005037202, 0.0005903542, 0.12887183, 0.23219064, 0.02619312, 0.0746498) * input_0(1.0, 1.0);
    result += mat4(0.0056373873, -0.0053527905, -0.08879806, -0.013721598, 0.07823804, -0.021828992, 0.020620795, 0.04011214, 0.40749726, -0.31946006, 0.5490318, 0.55331206, 0.16308117, 0.1148055, -0.1406192, -0.09716352) * input_1(-1.0, -1.0);
    result += mat4(-0.011977695, 0.021415366, 0.10674217, 0.024010912, -0.091017164, 1.0197006, -0.14088538, -0.1574418, -0.077302545, -0.13401118, 0.069594376, 0.17929332, 0.05257226, 0.047972836, 0.25075227, 0.0058099586) * input_1(-1.0, 0.0);
    result += mat4(-0.023474721, 0.019004457, 0.11696323, 0.07814072, 0.20543164, -0.24125448, 0.00626698, -0.3604005, 0.088084705, 0.018659262, 0.05633068, -0.0702099, -0.0031092642, 0.016344164, -0.07292143, -0.026721682) * input_1(-1.0, 1.0);
    result += mat4(-0.02426802, -0.0051463153, -0.019096155, -0.11293486, 0.055113003, -0.052954078, -0.10919172, 0.058166776, 0.6329252, 0.8392702, -0.54394376, 0.00479664, -0.030071678, -0.09967548, -0.11552014, 0.10597713) * input_1(0.0, -1.0);
    result += mat4(-0.12973969, 0.044055983, -0.0741896, 0.043940835, -0.07336369, -0.08591455, -0.094502784, 0.019010702, -0.10560946, 0.13840085, 0.12336737, 0.23538099, -0.015824195, 0.06576435, -0.101574115, 0.20598091) * input_1(0.0, 0.0);
    result += mat4(-0.09377748, -0.10965502, 0.1831173, -0.09826382, 0.091893174, 0.01952114, 0.13548489, 0.051896628, 0.028119227, -0.07566155, -0.29104373, 0.16428065, 0.058565132, -0.022771163, 0.16374297, 0.06019199) * input_1(0.0, 1.0);
    result += mat4(-0.046542138, 0.05341383, -0.24366197, -0.0172454, 0.036034394, -0.090473026, -0.4275775, -0.019212537, -0.007117544, -0.23850428, 0.027844973, -0.24854733, 0.11510337, 0.020644877, -0.53350264, 0.020486025) * input_1(1.0, -1.0);
    result += mat4(-0.0051744482, -0.050665025, 0.25751144, -0.019774185, 0.07014402, -0.0204677, 0.0650763, 0.027059957, 0.11894919, -0.09049786, -0.19003746, 0.07790946, 0.0991467, 0.023680937, 0.35812792, 0.018615661) * input_1(1.0, 0.0);
    result += mat4(-0.009721929, 0.078926444, 0.0013402783, 0.06110242, -0.016926778, -0.049209174, -0.15699452, -0.051052645, 0.02261404, 0.02645875, -0.19385281, 0.011638665, 0.0026446136, 0.0020134922, 0.02567426, 0.07551406) * input_1(1.0, 1.0);
    result += mat4(0.02272851, 0.07138985, 0.16866145, 0.14975788, 0.044883512, -0.051424343, 0.086618334, 0.17029858, 0.006712953, 0.0015999674, -0.60808265, -0.020326978, 0.05510151, -0.2201499, 0.45389637, -0.031170504) * input_2(-1.0, -1.0);
    result += mat4(0.015461174, 0.12133486, 0.005686125, -0.02620748, 0.1070057, 0.05506861, -0.122504234, -0.111814596, -0.034263067, -0.064550325, 0.26288426, -0.036118012, -0.16675599, -0.08320458, -0.18613534, 0.008878072) * input_2(-1.0, 0.0);
    result += mat4(-0.05990011, -0.025150964, 0.026540851, 0.07213448, -0.017023992, 0.022951342, -0.034461353, 0.00889491, 0.018904503, -0.04079911, -0.3249172, -0.112335, 0.11384054, 0.017884713, 0.08073378, 0.021614952) * input_2(-1.0, 1.0);
    result += mat4(0.034479134, 0.01532437, -0.079281166, -0.12399794, -0.030909918, 0.00074828713, -0.07151961, 0.0038160814, 0.03475078, 0.12633345, -0.5770242, -0.12131801, 0.097135276, 0.05050235, -0.08356225, -0.021275163) * input_2(0.0, -1.0);
    result += mat4(0.14120387, 0.2375519, 0.02036715, 0.24999219, 0.18576936, -0.034396976, 0.1743849, 0.28760123, -0.098970555, 0.0014362403, 0.37069198, -0.044195905, 0.103326604, -0.10629206, 0.06287316, 0.38587388) * input_2(0.0, 0.0);
    result += mat4(0.004531474, 0.020272398, 0.0017238791, 0.08022884, -0.027194435, 0.035670523, 0.024967222, -0.12469465, 0.17837106, 0.23121205, 0.21756847, 0.14330667, 0.0061482275, 0.041821864, -0.0072052246, 0.08261665) * input_2(0.0, 1.0);
    result += mat4(-0.082556464, 0.08919541, 0.22732404, 0.026976576, 0.07015902, 0.100917004, -0.27842548, -0.017944233, 0.30138916, 0.20335343, -0.5377577, -0.14005335, 0.26650792, -0.11269331, -0.2885034, 0.19163178) * input_2(1.0, -1.0);
    result += mat4(0.17827657, -0.14598195, -0.04781891, -0.04092589, -0.005731696, -0.14450194, 0.082166135, -0.08103581, 0.7790919, -0.12149493, 1.7334578, -0.14206636, -0.0045601926, -0.11474516, -0.14628059, 0.0046608825) * input_2(1.0, 0.0);
    result += mat4(0.02663214, -0.0012488379, 0.012906665, -0.07659516, 0.037917573, 0.017449975, 0.2049382, 0.07273526, 0.23730992, -0.18763837, -0.71341026, -0.10108224, 0.15849558, -0.04304451, 0.14317077, -0.094331466) * input_2(1.0, 1.0);
    result += mat4(0.048951495, 0.010930415, -0.03974837, 0.058122415, 0.041825037, -0.009014743, 0.036240507, 0.09370828, 0.069010586, -0.076127835, -0.072336614, 0.086133495, 0.01543232, 0.031857215, -0.038669124, 0.05978283) * input_3(-1.0, -1.0);
    result += mat4(-0.2039659, 0.07491313, -0.027437067, -0.06871162, 0.070393495, 0.020078437, -0.013871066, -0.042681478, -0.025183091, 0.08190467, 0.10950867, 0.05549895, 0.021850726, -0.06529158, 0.10355679, 0.1376194) * input_3(-1.0, 0.0);
    result += mat4(-0.008996075, 0.02306159, 0.24142446, 0.06784975, -0.038131993, -0.1553322, -0.09936577, -0.104312, 0.032337483, -0.00039380637, 0.016961815, -0.07835819, -0.14137924, 0.009004246, -0.024307055, -0.0049560373) * input_3(-1.0, 1.0);
    result += mat4(-0.036121372, 0.04468698, 0.015782034, -0.06858087, 0.042414974, 0.019020066, 0.060375128, -0.08845798, -0.09269952, -0.1219475, 0.005069422, -0.011942506, -0.029562805, 0.06736869, 0.013390919, -0.00039876517) * input_3(0.0, -1.0);
    result += mat4(0.08259093, 0.3205185, -0.5313976, 0.05227378, -0.1391651, 0.016304845, -0.009690295, -0.15876898, 0.34815067, -0.08928773, -0.011001063, 0.082605824, 0.18294948, 0.15433082, 0.27935773, 0.10813935) * input_3(0.0, 0.0);
    result += mat4(-0.0484234, -0.07855221, 0.17998199, -0.011966345, -0.11683568, -0.011050664, -0.027680675, 0.03698743, -0.07868825, 0.021160478, 0.054425135, 0.039520405, 0.016260171, 0.00022277379, -0.008655897, -0.11469831) * input_3(0.0, 1.0);
    result += mat4(0.013019072, 0.018057432, -0.105759576, -0.0027165422, -0.018337412, 0.017522117, 0.13713875, -0.0047116466, -0.016807038, 0.019226016, -0.03819623, 0.024157843, -0.062648974, 0.022510527, -0.006539211, 0.0027619326) * input_3(1.0, -1.0);
    result += mat4(0.08564201, 0.12512873, 0.078309774, -0.029939087, 0.057569195, 0.04837357, -0.06845745, -0.008998731, 0.01586088, 0.031835157, -0.067662664, 0.021091484, -0.10729586, 0.105894685, -0.105072096, -0.099549234) * input_3(1.0, 0.0);
    result += mat4(0.09523391, -0.011387344, 0.04122297, -0.024832493, 0.06462585, -0.019700542, -0.0073278947, -0.047871325, 0.095071375, 0.031114707, -0.03324155, 0.023069749, -0.0372423, -0.0018427168, -0.08755908, 0.0034728607) * input_3(1.0, 1.0);
    result += vec4(0.12657362, 0.008941165, -0.02465555, 0.11771113);
    return max(result, vec4(0.0));
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-3-ReLU)
//!HOOK NATIVE
//!BIND conv2d_2_tf
//!BIND conv2d_2_tf1
//!BIND conv2d_2_tf2
//!BIND conv2d_2_tf3
//!SAVE conv2d_3_tf
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (conv2d_2_tf_texOff(vec2(x_off, y_off)))
#define input_1(x_off, y_off) (conv2d_2_tf1_texOff(vec2(x_off, y_off)))
#define input_2(x_off, y_off) (conv2d_2_tf2_texOff(vec2(x_off, y_off)))
#define input_3(x_off, y_off) (conv2d_2_tf3_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(-0.040547065, 0.008181499, -0.05623747, 0.09285385, 0.072298735, -0.052972507, -0.022196073, 0.22403729, -0.03722647, 0.016329557, -0.07663524, 0.1588308, 0.009175834, -0.0065165716, -0.11807649, -0.011294948) * input_0(-1.0, -1.0);
    result += mat4(0.049569625, 0.02874852, -0.0941421, 0.16223939, -0.12822503, -0.16781959, 0.10535566, -0.06442939, -0.024628198, 0.07560722, -0.14703505, -0.043862663, 0.016902313, 0.05963933, -0.09430848, 0.619587) * input_0(-1.0, 0.0);
    result += mat4(-0.053741947, -0.17265709, -0.03698972, 0.020849086, 0.018093504, 0.0018078022, 0.06444232, -0.06421871, -0.07778982, -0.015293958, -0.04901811, 0.009940458, -0.031098586, -0.037640937, -0.072401, -0.16743927) * input_0(-1.0, 1.0);
    result += mat4(0.11496108, -0.029809762, 0.006114353, 0.13967595, -0.13871253, 0.09924953, 0.007958681, 0.33049142, 0.08344238, -0.027803654, 0.063602544, -0.17768641, 0.004789993, 0.029065028, -0.027987039, 0.041672736) * input_0(0.0, -1.0);
    result += mat4(0.015009065, 0.092483886, -0.09131343, 0.09288678, -0.24405855, 0.41440228, -0.047635783, 0.10195079, 0.08707655, 0.28768158, -0.16896, -0.049171183, 0.031215668, 0.0018203428, 0.027523825, -0.043573726) * input_0(0.0, 0.0);
    result += mat4(-0.1834422, 0.09334245, -0.03380214, -0.017066164, 0.13857108, -0.10976009, 0.08941103, -0.032793045, 0.059138454, -0.0564271, 0.07428519, 0.010980565, 0.034285106, -0.1052217, -0.010885039, 0.043891493) * input_0(0.0, 1.0);
    result += mat4(-0.021060891, -0.0036229612, 0.13244191, -0.061845623, 0.19326037, 0.014703651, -0.014943232, -0.056600984, -0.02419503, -0.034292977, 0.11477262, 0.017879123, -0.020252021, -0.031133592, 0.018954309, -0.039363652) * input_0(1.0, -1.0);
    result += mat4(-0.036197305, 0.054057162, -0.13080412, 0.01725118, 0.041654356, 0.009490073, 0.083169155, -0.0039324374, 0.019487178, -0.008173815, 0.052810613, -0.06635364, 0.03777742, 0.009956535, 0.011637982, 0.085426934) * input_0(1.0, 0.0);
    result += mat4(-0.03303753, -0.074374594, -0.058349773, 0.0034238505, -0.17892687, 0.03930013, 0.05388234, -0.03572897, -0.12921223, -0.09750459, 0.09811939, 0.07686455, 0.021638576, 0.04776668, 0.04952745, -0.056178853) * input_0(1.0, 1.0);
    result += mat4(-0.032149907, -0.09020786, -0.11706951, 0.098182775, 0.05796901, 0.15495688, 0.12523364, -0.04441831, 0.0023754386, -0.05136548, -0.092049204, -0.041457966, -0.014144361, -0.0017758711, -0.16103968, 0.015879344) * input_1(-1.0, -1.0);
    result += mat4(0.08277455, -0.29211196, -0.08730167, 0.3110981, -0.055074446, -0.023110379, 0.023825029, 0.20931172, -0.04733587, -0.0844476, 0.12383803, -0.10442957, -0.009144303, 0.114222966, -0.05988635, 0.063398816) * input_1(-1.0, 0.0);
    result += mat4(0.00499006, -0.16853955, -0.04990829, 0.1576895, 0.045861963, -0.016528064, -0.04242871, -0.044190712, 0.0055545894, 0.023822064, 0.07394134, 0.13729337, 0.09303688, -0.11738777, -0.030771011, 0.055240497) * input_1(-1.0, 1.0);
    result += mat4(0.06867798, 0.10897695, 0.036386076, 0.014321504, 0.053377364, 0.02559144, 0.07330741, -0.058008645, -0.021508802, 0.026162237, -0.103364915, -0.15489487, 0.000919929, -0.033627294, -0.110245444, -0.12735933) * input_1(0.0, -1.0);
    result += mat4(-0.071405105, 0.017829923, -0.1625806, -0.051786788, 0.015908027, 0.12910113, -0.044018008, 0.022472423, -0.044049915, 0.052962963, -0.016365703, 0.39107814, -0.07314815, 0.0823133, -0.038447622, 0.07424025) * input_1(0.0, 0.0);
    result += mat4(-0.006459952, -0.0668432, 0.10343096, -0.11356512, -0.5926156, -0.02547313, -0.023844264, 0.020119516, -0.032978926, 0.110031545, 0.012026798, -0.045448415, 0.010049553, 0.15264635, 0.11974599, 0.04272137) * input_1(0.0, 1.0);
    result += mat4(0.017648242, -0.00951733, -0.04215357, -0.025075098, -0.05218423, -0.056501865, -0.12280386, -0.015015868, -0.01974365, 0.030166399, -0.14670236, -0.074890524, -0.0153617775, -0.010326337, -0.0066872863, 0.025645943) * input_1(1.0, -1.0);
    result += mat4(-0.04875222, 0.020764666, -0.008096469, -0.05426383, 0.03963214, -0.018771386, -0.14292455, 0.05142939, -0.03771532, -0.029889261, 0.08885891, -0.044770524, 0.1692766, -0.022304364, 0.005188058, 0.031054113) * input_1(1.0, 0.0);
    result += mat4(-0.17164169, -0.07516507, -0.13407424, 0.027779935, -3.6466863, 0.04483245, 0.06868408, 0.0033002903, -0.038371615, -0.089453585, -0.12044355, -0.035981305, -0.029136952, -0.06286665, 0.12126288, 0.0073010917) * input_1(1.0, 1.0);
    result += mat4(-0.034439396, -0.061429646, -0.08952714, -0.0982198, -0.013551451, -0.097277306, -0.08675476, 0.03594774, 0.025209067, -0.04553933, 0.07553263, -0.09425879, -0.00040866318, 0.044004343, -0.0011614197, 0.010062525) * input_2(-1.0, -1.0);
    result += mat4(0.044787683, -0.057580695, 0.025260769, 0.005676284, -0.03519237, 0.13389587, 0.098098375, -0.025630591, -0.023771595, -0.016181989, -0.062661335, -0.17265989, 0.03897901, -0.03480426, 0.12859285, 0.5237167) * input_2(-1.0, 0.0);
    result += mat4(-0.00120486, -0.44033134, -0.1442022, 0.036592428, -0.015610639, 0.032872293, 0.095105715, 0.038662806, -0.018336138, 0.11864007, -0.0031754223, -0.0017247158, 0.1919513, -0.14917876, 0.12629941, -0.16679594) * input_2(-1.0, 1.0);
    result += mat4(0.028804686, 0.008382476, -0.037918866, -0.0107835075, -0.025438868, -0.034990642, 0.115640536, 0.04742796, -0.01813291, 0.13506934, -0.049366105, -0.19940816, 0.0070636533, 0.02491611, -0.054057416, -0.09827046) * input_2(0.0, -1.0);
    result += mat4(0.07396952, 0.34270814, -0.008278588, -0.09941671, 0.14384326, 0.05157906, 0.03582528, -0.008314308, 0.16535346, 0.11545213, -0.1019101, -0.14970706, 0.00941445, 0.0011765395, 0.013734834, 0.04453496) * input_2(0.0, 0.0);
    result += mat4(0.08277819, 0.16060658, 0.013472909, 0.033474386, -0.07300079, -0.07323146, -0.109438024, -0.047919977, -0.08123712, 0.060908604, -0.060203016, 0.041556906, -0.0127576655, 0.016994514, -0.10063885, -0.12494611) * input_2(0.0, 1.0);
    result += mat4(-0.034698706, -0.046491865, -0.116046645, -0.013009393, -0.06665983, -0.017785056, 0.019562067, -0.07629133, 0.08000937, -0.09870134, 0.009076342, 0.10323799, -0.031169003, 0.003323211, -0.07697823, 0.010385698) * input_2(1.0, -1.0);
    result += mat4(0.086172126, -0.0040242258, -0.14790109, 0.015413738, 0.0033524798, -0.07119386, 0.0034319644, 0.009483225, -0.16187353, 0.00611991, 0.047696274, 0.020312048, -0.008929978, 0.032083414, 0.100554384, 0.016599063) * input_2(1.0, 0.0);
    result += mat4(-0.17886661, -0.12125565, 0.05707719, 0.0052232766, -0.0028969266, -0.011522386, -0.11637271, 0.005757722, -3.03603, -0.055082247, -0.04176337, 0.005757179, 0.018003548, 0.020559646, -0.028832735, -0.018277586) * input_2(1.0, 1.0);
    result += mat4(0.046509244, -0.00048227664, -0.13764495, -0.096861966, 0.0043503637, 0.029689735, 0.09371493, 0.073918946, -0.050683685, -0.057390567, 0.12866668, 0.024021244, 0.0055350037, 0.052140627, 0.012422405, -0.020791074) * input_3(-1.0, -1.0);
    result += mat4(0.014403626, 0.12333136, -0.10431974, -0.117032796, -0.097902544, -0.06695865, 0.073203176, 0.14823413, 0.018303176, -0.14281325, 0.06702516, -0.031904764, 0.038244195, -0.157359, -0.0762563, 0.00455257) * input_3(-1.0, 0.0);
    result += mat4(-0.05622944, 0.20777301, 0.09220845, 0.0033694368, -0.13023703, -0.014531168, 0.066202156, -0.03778493, 0.07121123, -0.026064334, -0.15215735, 0.0046750726, -0.018600618, 0.1884006, 0.07279782, 0.017838126) * input_3(-1.0, 1.0);
    result += mat4(-0.05379681, -0.009605519, 0.025046624, 0.055126283, -0.01786834, -0.0036256157, -0.06272775, -0.070488125, 0.054693528, 0.12208337, 0.09552449, -0.0138351815, 0.07799941, -0.06489631, -0.075289406, 0.15448533) * input_3(0.0, -1.0);
    result += mat4(-0.11618614, 0.03986779, -0.06314649, 0.08763759, 0.039686292, 0.17580271, -0.14877006, -0.10847099, 0.4897202, 0.21477951, -0.12932718, 0.01240703, -0.027002867, 0.0049379924, -0.105639696, -0.17890872) * input_3(0.0, 0.0);
    result += mat4(-0.048120834, -0.093799144, -0.14196253, 0.03836908, 0.24630179, -0.11736728, -0.13723315, 0.13796927, -0.014342607, -0.67018396, -0.1489085, -0.022119263, 0.1114359, -0.033614032, 0.002400757, -0.006586904) * input_3(0.0, 1.0);
    result += mat4(0.056357477, 0.00016103026, -0.010182897, -0.014656248, -0.0076123015, -0.015355839, 0.052400265, -0.017160108, -0.03948035, -0.19745667, -0.09635196, 0.006154961, -0.081046775, -0.00013865714, -0.08847306, -0.04767963) * input_3(1.0, -1.0);
    result += mat4(0.004086192, 0.034056123, 0.0033023318, 0.039249647, 0.053701643, 0.010554056, 0.02598491, 0.07530345, 0.33269462, 0.05897623, -0.10028528, -0.033984546, 0.012793257, 0.039454415, 0.010967076, 0.041112415) * input_3(1.0, 0.0);
    result += mat4(-0.044218075, -0.06285777, 0.043329127, 0.0056168, -0.032189228, 0.056529064, 0.067435965, -0.023678772, -1.5124501, -0.07549721, -0.101764254, 0.04283152, 0.17069633, -0.05955093, -0.06817501, 0.022148866) * input_3(1.0, 1.0);
    result += vec4(0.0040912265, -0.05070527, -0.027099049, 0.056866206);
    return max(result, vec4(0.0));
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-3-ReLU)
//!HOOK NATIVE
//!BIND conv2d_2_tf
//!BIND conv2d_2_tf1
//!BIND conv2d_2_tf2
//!BIND conv2d_2_tf3
//!SAVE conv2d_3_tf1
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (conv2d_2_tf_texOff(vec2(x_off, y_off)))
#define input_1(x_off, y_off) (conv2d_2_tf1_texOff(vec2(x_off, y_off)))
#define input_2(x_off, y_off) (conv2d_2_tf2_texOff(vec2(x_off, y_off)))
#define input_3(x_off, y_off) (conv2d_2_tf3_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(-0.06024875, -0.12164802, 0.04262219, -0.04165135, -0.34133863, -0.0023087882, -0.050654918, -0.111605115, 0.1678007, 0.048740737, -0.056184806, -0.1175312, 0.116867475, 0.023095988, 0.028518125, 0.16574503) * input_0(-1.0, -1.0);
    result += mat4(0.45035324, 0.085359894, -0.104073755, 0.02206917, -0.22333448, 0.018827988, 0.035688028, -0.10014596, 0.1836781, 0.036268868, -0.028921332, 0.11308809, 0.16760404, -0.025358038, -0.2923023, 0.31645033) * input_0(-1.0, 0.0);
    result += mat4(0.0131565975, -0.12896913, -0.037178114, 0.07031002, 0.20753476, 0.06716903, -0.016856758, 0.056130413, -0.13924749, -0.098643385, 0.007837969, 0.023964958, -0.054964285, 0.12976085, 0.09839056, 0.0037344412) * input_0(-1.0, 1.0);
    result += mat4(-0.07512339, -0.035479877, -0.0027059314, -0.041716408, 0.14629215, -0.058410034, 0.3002013, -0.063764155, -0.07518022, -0.018531222, -0.010116093, -0.064052135, 0.09580937, 0.034019392, 0.069668345, -0.11486852) * input_0(0.0, -1.0);
    result += mat4(0.018078528, 0.17355889, -0.10652068, 0.08607339, -0.08876455, 0.046107877, -0.14068419, -0.01611886, 0.1481009, -0.15302716, -0.012965632, -0.041651513, 0.0051107993, -0.093618445, -0.22227326, 0.05607519) * input_0(0.0, 0.0);
    result += mat4(0.26812348, 0.019036064, 0.031066364, -0.047890477, -0.028172228, 0.0710858, 0.07720916, -0.031636562, 0.0069425493, -0.15511326, 0.058725677, 0.06561123, -0.07560612, -0.23155564, -0.01783193, 0.034439538) * input_0(0.0, 1.0);
    result += mat4(0.22041667, 0.029785614, 0.16764483, -0.044241462, -0.2046964, -0.13595004, -0.009684068, 0.030880097, -0.010927385, 0.008507106, -0.06250157, 0.046915732, 0.01846992, -0.0057680337, -0.0036101264, -0.008977685) * input_0(1.0, -1.0);
    result += mat4(0.076695584, 0.16755457, 0.018438129, -0.018770166, -0.03454845, 0.10063606, -0.14525889, 0.0050136223, -0.0830769, 0.022756485, -0.028821126, 0.039236695, 0.029685725, -0.042253762, -0.09528624, 0.082020134) * input_0(1.0, 0.0);
    result += mat4(-0.13990445, 0.049605545, 0.015542798, 0.073122896, -0.06358214, -0.049244307, 0.058867022, 0.017844168, -0.13385007, 0.019711237, -0.089228705, 0.019443173, -0.09993766, 0.031889934, -0.12401708, -0.008085782) * input_0(1.0, 1.0);
    result += mat4(0.15684369, 0.0022244933, 0.08021034, -0.34286475, -0.108427174, -0.070919536, -0.050269477, -0.21043432, -0.044112828, -0.0417099, -0.023473093, -0.002247913, -0.007107384, -0.0036082533, -0.031004107, 0.00029493228) * input_1(-1.0, -1.0);
    result += mat4(-0.22195575, -0.036190826, -0.030182526, -0.026699856, -0.053277526, -0.31292778, 0.028351711, 0.23069908, -0.36000514, 0.07311037, 0.13486437, 0.5127597, -0.106623486, 0.029835593, -0.03209001, -0.4065999) * input_1(-1.0, 0.0);
    result += mat4(-0.5198136, 0.1639372, 0.112848505, -0.058828957, -0.31099075, -0.4968569, 0.010925702, 0.046228163, 0.13130355, -0.21904564, -0.056860857, 0.17235173, 0.1429697, 0.021767715, -0.08907045, -0.016656991) * input_1(-1.0, 1.0);
    result += mat4(-0.12032195, -0.009768291, -0.016795583, -0.13301274, -0.02245699, 0.13844886, 0.0039415522, 0.0007648688, -0.041973278, -0.005840678, 0.019122234, 0.043597024, 0.009961952, 0.10857181, 0.042259336, 0.099228665) * input_1(0.0, -1.0);
    result += mat4(-0.19786976, 0.09445658, 0.035950042, 0.106689915, -0.31145793, -0.013569021, -0.08757956, 0.09072666, 0.0038284196, 0.12886588, -0.12826075, 0.02678104, -0.17586659, -0.06857423, -0.02425221, -0.022650167) * input_1(0.0, 0.0);
    result += mat4(0.07724288, 0.03737332, 0.057643715, -0.045362674, -0.00060985726, 0.15320405, 0.014238503, 0.022398617, -0.011012855, 0.14113018, -0.5517288, -0.026172515, 0.0670437, -0.04392352, 0.078811936, -0.13280801) * input_1(0.0, 1.0);
    result += mat4(0.041172054, 0.027257917, -0.017363142, -0.031809054, -0.03179274, 0.03332951, 0.06865835, -0.018041248, 0.040763237, -0.013688082, -0.044377502, -0.033668797, -0.006494598, -0.08217427, -0.028457649, 0.053555757) * input_1(1.0, -1.0);
    result += mat4(0.025757173, 0.019717371, -0.05671397, 0.0057137557, 0.030875118, 0.075816214, 0.13156693, -0.0011482415, -0.04172524, 0.058286052, 0.014425842, -0.07945088, -0.09613779, -0.045010366, 0.03579607, 0.034461938) * input_1(1.0, 0.0);
    result += mat4(-0.049026944, -0.06647483, 0.03282056, -0.019743374, -0.0574724, -0.042340957, -0.036117435, 0.0403386, 0.057828512, -0.038712963, 0.11620434, 0.02976877, 0.04595478, -0.043893002, 0.06888911, -0.0009074727) * input_1(1.0, 1.0);
    result += mat4(0.08909047, -0.04229113, -0.05182546, -0.26140907, -0.08202016, 0.052842703, -0.09131875, -0.043721292, 0.091760464, -0.00549844, 0.04543107, -0.0019404759, 0.23987415, 0.028417753, 0.07276759, -0.05513937) * input_2(-1.0, -1.0);
    result += mat4(-0.42277065, -0.0074912533, -0.11037671, 0.1275528, -0.6086499, 0.044271022, -0.012354749, 0.023151128, -0.116411746, -0.06937987, 0.13698423, -0.09070729, -0.24808855, -0.01959432, -0.37066945, 0.0074301464) * input_2(-1.0, 0.0);
    result += mat4(-0.10148316, -0.037866652, 0.028706007, 0.04445218, 0.037756424, -0.023283236, -0.0714128, 0.038333554, 0.077353716, -1.0796081, -0.024133857, 0.013804065, -0.095068954, -0.050316438, -0.12349483, -0.16610141) * input_2(-1.0, 1.0);
    result += mat4(-0.046911396, -0.050831348, -0.053351615, -0.0054643108, -0.1509188, 0.08117649, 0.06739057, 0.22518182, 0.03073299, -0.0581995, -0.1198693, -0.003882248, 0.12465609, 0.011442336, 0.02344571, -0.08214052) * input_2(0.0, -1.0);
    result += mat4(-0.11047852, 0.08373034, -0.050996397, 0.09048652, 0.14833668, -0.20924333, 0.066338085, -0.10225338, -0.18144248, -0.008706728, 0.022993432, 0.06892454, 0.029468443, 0.08432433, 0.17773038, 0.017299457) * input_2(0.0, 0.0);
    result += mat4(0.025975976, -0.077942945, 0.123375736, -0.114885874, 0.29359224, 0.067530915, -0.0009249875, 0.005987865, 0.1632535, 0.10940126, 0.016067125, -0.04104147, -0.030958863, -0.11734068, 0.14204422, -0.011384127) * input_2(0.0, 1.0);
    result += mat4(-0.059263874, 0.03940826, 0.08045582, 0.030135756, -0.09474036, -0.033588383, -0.06302429, 0.04808814, 0.04828674, -0.037476268, 0.01004146, 0.09445923, 0.04326241, 0.052759234, -0.068335146, -0.011051205) * input_2(1.0, -1.0);
    result += mat4(0.1557707, 0.02594035, -0.0525326, -0.008789132, -0.25964504, -0.068725936, -0.09226653, -0.17169033, 0.040534142, 0.059009437, -0.084046416, 0.026845865, 0.07610355, 0.007909893, 0.012172162, 0.058833104) * input_2(1.0, 0.0);
    result += mat4(0.07299182, 0.005551888, 0.047438376, -0.023920009, -0.11538022, -0.06285111, 0.06436358, 0.006517525, -0.05065135, -0.1056573, 0.02034996, 0.041777834, -0.014971549, -0.03786967, -0.07304748, -0.04750136) * input_2(1.0, 1.0);
    result += mat4(-0.037906177, -0.0172447, 0.034035947, -0.16184577, -0.20693578, -0.07330779, -0.011941678, -0.08248327, -0.09994133, -0.026339972, -0.05110567, -0.011978782, -0.1512945, -0.05499101, -0.005585519, -0.22448562) * input_3(-1.0, -1.0);
    result += mat4(0.20318215, 0.09017684, 0.03664721, -0.03060524, 0.40624657, 0.01892687, 0.05537831, 0.124227926, 0.3299395, -0.28393686, 0.013852847, 0.28691426, 0.051212024, -0.0013273358, 0.014273368, -0.07956303) * input_3(-1.0, 0.0);
    result += mat4(0.2390796, -0.1882154, -0.012027804, -0.015594017, 0.41846526, -0.018936932, 0.0031404754, 0.07681081, 0.18054266, 0.036253754, 0.13522285, 0.2156352, -0.058567293, -0.10953912, -0.013812693, 0.025409559) * input_3(-1.0, 1.0);
    result += mat4(0.13134935, 0.0034509636, -0.041028313, -0.047965396, -0.025758095, -0.038609046, -0.046259876, 0.011411408, -0.04688341, 0.013949178, 0.025317663, -0.049467184, -0.22905979, 0.1008856, 0.044658896, 0.17744309) * input_3(0.0, -1.0);
    result += mat4(0.10140991, 0.004364824, 0.14363803, 0.15784168, -0.040242855, 0.11032851, -0.14673087, 0.043326966, -0.054044988, 0.016186243, 0.052132793, 0.29572487, -0.36270985, 0.28597644, 0.21038185, -0.09065908) * input_3(0.0, 0.0);
    result += mat4(0.050680663, -0.1683359, -0.04958534, -0.015039259, -0.16719306, 0.029565414, 0.0995334, -0.07480811, -0.20943351, -0.22655368, -0.032410353, -0.064173244, 0.12618311, 0.024662254, 0.04419544, -0.019591369) * input_3(0.0, 1.0);
    result += mat4(0.0025286179, -0.050898466, -0.07383152, 0.009939076, -0.0899203, -0.08279895, 0.08735388, 0.029609311, -0.13877355, -0.12000774, 0.07672043, 0.10511522, 0.013334384, -0.017827336, -0.02678829, -0.08446968) * input_3(1.0, -1.0);
    result += mat4(-0.011026291, -0.02040922, 0.018651806, 0.034639142, 0.110554494, 0.031394273, -0.031915188, -0.012271336, 0.07880302, 0.12635724, 0.027694356, 0.031750467, -0.028485242, 0.08988756, 0.06905221, 0.035873223) * input_3(1.0, 0.0);
    result += mat4(-0.037890494, -0.0364573, -0.03487775, -0.052305106, 0.095273845, 0.1280425, 0.08706025, 0.018881097, -0.1773279, 0.1828104, 0.060342997, 0.022029618, -0.023398492, -0.09861298, 0.017026687, -0.02155501) * input_3(1.0, 1.0);
    result += vec4(0.028968658, 0.09565388, 0.12744196, 0.14205508);
    return max(result, vec4(0.0));
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-3-ReLU)
//!HOOK NATIVE
//!BIND conv2d_2_tf
//!BIND conv2d_2_tf1
//!BIND conv2d_2_tf2
//!BIND conv2d_2_tf3
//!SAVE conv2d_3_tf2
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (conv2d_2_tf_texOff(vec2(x_off, y_off)))
#define input_1(x_off, y_off) (conv2d_2_tf1_texOff(vec2(x_off, y_off)))
#define input_2(x_off, y_off) (conv2d_2_tf2_texOff(vec2(x_off, y_off)))
#define input_3(x_off, y_off) (conv2d_2_tf3_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(0.0073533887, -0.0173456, -0.19434018, -0.16485499, -0.161938, 0.11492712, -0.68439573, 0.06629602, -0.01627869, 0.14324406, -0.8514658, -0.06094934, -0.072853796, 0.01599923, 0.42525786, 0.0115693305) * input_0(-1.0, -1.0);
    result += mat4(0.0053585153, 0.068126835, 0.7357008, -0.101561874, -0.082419746, 0.014794141, 0.10100114, 0.022305958, 0.025447827, 0.07967828, 0.14380643, -0.2050595, -0.28862372, 0.08072931, 0.10252281, 0.087566644) * input_0(-1.0, 0.0);
    result += mat4(0.0013155026, 0.038636543, 0.047561135, 0.0018818383, 0.003514712, -0.04033586, -0.16680153, 0.02331184, 0.0064015947, 0.071470894, -0.08989014, -0.0055960095, -0.031683296, 0.07417393, -0.0045447852, 0.1151892) * input_0(-1.0, 1.0);
    result += mat4(-0.3998048, -0.13766384, -0.027511837, -0.022646908, 0.33046934, 0.05550679, -0.2582369, 0.036414977, -0.13795239, -0.16851526, 0.15408233, 0.27668524, 0.0838189, -0.02530214, 0.0029392173, -0.07429242) * input_0(0.0, -1.0);
    result += mat4(-0.07054873, -0.08382691, 0.16075704, 0.08190333, -0.019301347, -0.0381142, 0.04954965, -0.30128446, 0.033389065, -0.559782, 0.22726828, 0.18366218, 0.013654069, -0.0023834128, 0.05894762, 0.13917322) * input_0(0.0, 0.0);
    result += mat4(-0.0032477013, -0.0061314385, 0.0012442156, -0.021981012, 0.078794725, -0.040091246, -0.060774848, -0.0069399667, -0.04844258, 0.13205269, -0.06438676, -0.13654837, -0.13417041, 0.070788406, -0.010579539, -0.029509503) * input_0(0.0, 1.0);
    result += mat4(-0.08678715, 0.03137114, -0.098490715, -0.023963008, -0.45943737, 0.14306186, 0.37681222, -0.039669417, -0.018794144, 0.009321076, -0.19513959, -0.10319372, 0.0010601722, -0.029853482, 0.0027214265, 0.019830514) * input_0(1.0, -1.0);
    result += mat4(0.08601305, 0.03274708, 0.04392327, 0.013670745, 0.21042387, -0.19715114, 0.45147374, 0.09527526, -0.068427354, -0.02331626, 0.22384489, 0.019832045, 0.016929124, 0.027301883, 0.003437754, 0.028666135) * input_0(1.0, 0.0);
    result += mat4(0.013285233, -0.009392062, 0.022690738, -0.047901638, -0.051643047, -0.030324256, -0.08563558, -0.00033035854, 0.07141345, 0.016434042, -0.14336295, 0.036226135, -0.0038913428, -0.007408804, -0.0023387882, 0.022614943) * input_0(1.0, 1.0);
    result += mat4(0.14145212, -0.029461985, -0.35281995, 0.044733047, 0.0078815175, -0.07043792, -0.64645237, -0.13911007, 0.027856331, 0.0015387811, -0.06272108, -0.016111637, -0.04910648, 0.014077123, -0.48903346, -0.013640462) * input_1(-1.0, -1.0);
    result += mat4(0.022769548, 0.00268743, -0.11687677, 0.044426367, -0.009672509, -0.1240482, 0.13322918, -0.13623103, -0.11568746, -0.043102633, 0.44567132, 0.34080154, -0.022344384, 0.14409393, -0.29756376, -0.003085313) * input_1(-1.0, 0.0);
    result += mat4(-0.020592257, -0.08719798, 0.10727381, 0.065142594, 0.04599579, 0.09356582, 0.051277027, 0.013293962, -0.30316454, -0.08857162, -0.121258974, -0.1599959, 0.004600394, -0.0010657685, -0.17159583, 0.029832525) * input_1(-1.0, 1.0);
    result += mat4(0.06553613, -0.009765631, 0.05984902, -0.16505815, 0.11216219, 0.0448008, 0.36813754, -0.047862515, -0.014356034, 0.0024907002, -0.05526229, -0.10963256, 0.108401194, 0.09942907, 0.11528405, -0.08030136) * input_1(0.0, -1.0);
    result += mat4(0.09465859, -0.08470614, -0.2492819, -0.01827297, -0.04711459, 0.22274432, -0.069757655, 0.10181599, -0.22054489, -0.06182984, 0.06943249, 0.36863953, -0.13751063, 0.35092425, -0.10590815, 0.053135943) * input_1(0.0, 0.0);
    result += mat4(-0.053784158, 0.0632569, -0.10539726, 0.008923929, 0.054114252, 0.118519545, -0.0581423, -0.04298139, 0.22267415, -0.08122798, -0.07825147, 0.03256766, -0.057774175, -0.042695556, 0.06963649, 0.030462943) * input_1(0.0, 1.0);
    result += mat4(0.06407864, -0.029043065, -0.01938328, -0.027231567, -0.04866047, -0.0020871891, 0.06810508, 0.06937022, 0.010698451, 0.057924315, 0.025987085, 0.02401318, -0.0702306, 0.040457383, -0.07528633, 0.082216226) * input_1(1.0, -1.0);
    result += mat4(0.119484425, 0.03192913, -0.014671393, -0.04301794, -0.022033831, 0.07286708, -0.20220216, 0.056196045, 0.11076089, -0.010424305, 0.05570657, -0.022580322, -0.0006727734, -0.0065874658, -0.03943738, 0.06334326) * input_1(1.0, 0.0);
    result += mat4(-0.023061173, -0.06561928, -0.013534123, -0.033696007, -0.012849331, -0.007827978, 0.027358111, -0.004438726, -0.019415695, 0.044606954, -0.070501894, -0.0489559, -0.01135622, -0.0410184, -0.007917518, -0.025321886) * input_1(1.0, 1.0);
    result += mat4(-0.10294537, 0.0954278, -0.51887345, -0.13552365, -0.026051175, -0.00081791054, -0.37332958, -0.02306738, 0.08778575, -0.04850715, -0.348947, 0.031495266, 0.043776684, -0.102510795, -0.3914829, 0.047327187) * input_2(-1.0, -1.0);
    result += mat4(0.13704598, 0.11367431, -0.027468313, -0.13734144, -0.06586383, 0.03906299, -0.947586, -0.0069057015, 0.0738823, -0.054886766, -0.10009967, 0.08354707, 0.01142284, 0.07972309, 0.025072489, -0.03024718) * input_2(-1.0, 0.0);
    result += mat4(0.08384028, 0.012395187, -0.07738806, 0.0404114, -0.021420665, 0.085860096, 0.16911063, -0.016741648, 0.015291886, -0.0019002846, 0.052488334, -0.03194212, 0.120328225, -0.04824378, -0.12718907, 0.0648495) * input_2(-1.0, 1.0);
    result += mat4(-0.17436019, -0.07436211, -0.029792072, -0.07127339, 0.054030254, 0.050265748, 0.15289222, 0.098903716, -0.1360499, 0.0056431983, 0.24756218, -0.24192211, -0.021586906, -0.045875352, -0.084457636, 0.08950038) * input_2(0.0, -1.0);
    result += mat4(0.15491782, -0.28384027, 0.4432851, 0.15760814, 0.046264593, -0.32073912, 0.6695997, -0.049935848, -0.02561051, 0.17350484, 0.18099749, 0.1383008, 0.391539, -0.092395924, -0.08845929, -8.8749395e-05) * input_2(0.0, 0.0);
    result += mat4(-0.008273538, -0.10625111, 0.088002115, 0.07693122, 0.07069384, 0.007859976, 0.22801627, 0.003138482, -0.009946134, -0.049448732, 0.057089023, -0.004086776, -0.099354886, 0.15851039, -0.17531863, -0.017652782) * input_2(0.0, 1.0);
    result += mat4(-0.055134688, -0.023111925, -0.040859975, 0.014902785, 0.057745423, 0.0038307237, 0.007427362, 0.037259206, 0.061465472, 0.07369121, -0.09384429, 0.113331765, 0.044176124, -0.025215534, 0.022733467, 0.045208503) * input_2(1.0, -1.0);
    result += mat4(0.047252335, 0.021350918, -0.038891733, 0.15619785, -0.04914579, -0.16700466, 0.2173345, 0.046693586, -0.018735874, 0.09971666, -0.10619015, 0.079491206, -0.048080157, 0.0051454264, -0.02348982, 0.05784544) * input_2(1.0, 0.0);
    result += mat4(0.004688659, -0.083170794, -0.041917913, 0.011098702, 0.0027052069, -0.013511185, -0.049837627, -0.0547509, -0.0010441534, -0.031644467, -0.02206037, -0.016672026, 0.026235282, 0.05090823, -0.026956089, 0.013339251) * input_2(1.0, 1.0);
    result += mat4(-0.013845891, -0.039226744, -0.07539369, 0.0069943015, 0.07772551, 0.043916833, -0.21166958, -0.06608123, -0.043810192, -0.033074036, -0.0980159, -0.024580555, 0.024877036, 0.021901514, -0.5204577, -0.02644275) * input_3(-1.0, -1.0);
    result += mat4(-0.028119074, 0.009813666, 0.1003023, -0.00728131, 0.08854049, 0.09753622, -0.09482987, 0.0060579777, 0.01251267, 0.044316947, 0.09805829, -0.08770744, 0.055979583, 0.067139976, -0.047024306, 0.05689366) * input_3(-1.0, 0.0);
    result += mat4(-0.026160127, 0.021558251, -0.020658633, -0.039987538, 0.10870199, -0.0069916584, -0.04579388, -0.011001425, 0.06488312, 0.060394872, -0.030092863, -0.045313805, -0.019745652, 0.0023946434, -0.09907015, 0.018033152) * input_3(-1.0, 1.0);
    result += mat4(0.15590627, -0.15892604, 0.12067601, 0.11945808, -0.28896788, 0.13668734, -0.12921973, -0.21610859, -0.13409083, 0.12182647, -0.30711114, -0.22006185, 0.11069154, 0.15889525, -0.03044299, 0.13170335) * input_3(0.0, -1.0);
    result += mat4(-0.08943309, -0.37550578, 0.20048757, 0.06307084, -0.057856847, 0.009156438, 0.04384252, -0.11509519, 0.23044404, 0.22826977, 0.16493769, 0.16096109, -0.012315302, -0.0700089, 0.28390962, 0.1441492) * input_3(0.0, 0.0);
    result += mat4(-0.042586662, -0.08014358, 0.047513742, -0.061386883, 0.036943946, -0.03396803, -0.05479039, 0.058671053, 0.05762339, 0.197162, -0.47727388, 0.026511623, 0.026119258, 0.068954475, -0.029623142, -0.07151431) * input_3(0.0, 1.0);
    result += mat4(-0.0035611666, -0.004487095, -0.017882457, -0.011482783, -0.18461514, -0.006971558, 0.03151888, 0.010442177, -0.074725784, -0.015584342, 0.14955588, 0.050247412, -0.04977973, 0.11176613, -0.039910085, -0.14830814) * input_3(1.0, -1.0);
    result += mat4(-0.011446568, -0.05831167, 0.10432603, -0.06308014, 0.058805164, -0.014217323, 0.12962314, 0.1319147, -0.011909643, -0.048816234, -0.013797766, 0.16784321, -0.05567641, -0.0032813374, -0.13065226, 0.02902007) * input_3(1.0, 0.0);
    result += mat4(0.041785933, -0.042338774, -0.10129757, -0.0081412755, -0.020597659, 0.0015524023, 0.007851096, 0.014020287, -0.03791546, 0.024610749, -0.009367746, -0.037318483, 0.0004489761, -0.066573806, 0.008117466, -0.0012988329) * input_3(1.0, 1.0);
    result += vec4(0.08422155, 0.10428194, -0.006912882, 0.07450509);
    return max(result, vec4(0.0));
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-3-ReLU)
//!HOOK NATIVE
//!BIND conv2d_2_tf
//!BIND conv2d_2_tf1
//!BIND conv2d_2_tf2
//!BIND conv2d_2_tf3
//!SAVE conv2d_3_tf3
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (conv2d_2_tf_texOff(vec2(x_off, y_off)))
#define input_1(x_off, y_off) (conv2d_2_tf1_texOff(vec2(x_off, y_off)))
#define input_2(x_off, y_off) (conv2d_2_tf2_texOff(vec2(x_off, y_off)))
#define input_3(x_off, y_off) (conv2d_2_tf3_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(-0.0973134, 0.023483098, -0.10137252, 0.041823287, 0.09476579, 0.008380174, 0.11160423, -0.017557323, 0.01590455, -0.13820435, 0.0077515226, 0.009514728, 0.026074689, -0.107761994, 0.11928842, -0.03244807) * input_0(-1.0, -1.0);
    result += mat4(0.11208642, -0.09928587, 0.3840148, 0.022519844, -0.029820701, 0.02037314, 0.17926775, -0.012923031, 0.104745045, 0.13661718, -0.055828355, 0.07105544, 0.0665803, -0.09754873, -0.14344025, -0.041266587) * input_0(-1.0, 0.0);
    result += mat4(0.15226705, -0.11379559, 0.11623607, -0.040135633, -0.09922964, 0.0967411, -0.027448928, -0.024131764, -0.08236236, 0.10716466, 0.06447138, 0.011108068, -0.021982169, 0.08248141, -0.20487742, -0.03705489) * input_0(-1.0, 1.0);
    result += mat4(0.012589361, 0.05765669, -0.12766625, -0.0638762, -0.050043117, 0.08149386, -0.037048712, 0.36353835, 0.048235323, -0.10596339, 0.12471402, 0.07605485, 0.06486842, 0.016549038, -0.121971674, 0.015744086) * input_0(0.0, -1.0);
    result += mat4(0.13584071, 0.11946842, 0.12616818, -0.074662626, 0.17070484, 0.044083077, 0.3306401, 0.08251479, -0.13158372, -0.0926037, -0.12863941, -0.73224026, 0.0619327, 0.02915886, 0.09614175, -0.041457627) * input_0(0.0, 0.0);
    result += mat4(-0.17024343, 0.0091124065, -0.079343736, -0.10775588, -0.029034194, -0.13758057, -0.030501, -0.03254566, 0.17944327, -0.09578618, -0.05669889, 0.014023217, -0.023774689, -0.022939745, 0.2560129, 0.026016312) * input_0(0.0, 1.0);
    result += mat4(0.1174872, -0.058768366, -0.12272754, -0.06762019, 0.13235606, -0.09597617, 0.10972674, -0.32276714, 0.107787676, 0.06124733, -0.0055104084, -0.015584893, -0.053366877, 0.1358922, 0.018596184, 0.030455198) * input_0(1.0, -1.0);
    result += mat4(-0.019920256, -0.053736426, 0.086994864, 0.04728324, 0.059565306, -0.1511535, -0.4015131, -0.09374974, -0.052534636, -0.12483918, 0.03758259, 0.052788775, 0.06365181, -0.107212625, -0.088542864, -0.016946305) * input_0(1.0, 0.0);
    result += mat4(-0.13441664, 0.11566062, -0.035645023, -0.024098366, 0.004512524, -0.08605367, -0.091651194, -0.035674285, -0.36104894, -0.12185862, -0.023272408, -0.025333969, 0.4128822, 0.13184538, -0.1564825, -0.017034337) * input_0(1.0, 1.0);
    result += mat4(0.13605182, 0.11594312, -0.07543206, 0.033330206, 0.067248896, -0.1230468, -0.20314041, -0.020097328, -0.01410638, 0.0035557982, -0.29968938, 0.013798306, 0.01729353, -0.07045328, 0.06329717, -0.066647425) * input_1(-1.0, -1.0);
    result += mat4(-0.12300117, -0.10849232, 0.052302994, 0.0809817, 0.14779241, 0.06130983, 0.027971448, -0.14643371, -0.15002123, 0.059717935, 0.08441391, -0.02458429, -0.029455973, 0.07855285, 0.23564434, 0.17208256) * input_1(-1.0, 0.0);
    result += mat4(0.009093079, 0.09080467, 0.028927278, 0.055269215, 0.06123875, 0.09132422, 0.10585979, -0.115408495, -0.09680395, 0.03416735, 0.03155822, 0.20146748, 0.12192754, 0.03561617, 0.10392892, 0.05877977) * input_1(-1.0, 1.0);
    result += mat4(0.045035407, -0.020890567, -0.34194413, -0.04160795, -0.12866275, -0.003975721, -0.16500229, 0.13221267, -0.062237017, -0.10169854, -0.14239663, 0.039320443, -0.00035926898, 0.0016982757, -0.004017165, 0.099506706) * input_1(0.0, -1.0);
    result += mat4(0.0014773028, 0.092092335, 0.18863703, -0.09950408, 0.22922342, -0.08437725, 0.22099662, 0.007922263, 0.10893491, -0.081889234, -0.09481898, 0.03489682, -0.10447347, 0.03919498, 0.074971184, -0.0036307934) * input_1(0.0, 0.0);
    result += mat4(-0.08155845, 0.013474026, 0.23172364, 0.13230589, -0.28850117, 0.10461586, 0.027960146, -0.14456671, 0.4030679, 0.04637685, -0.4358827, 0.22192265, -0.037106708, 0.06962524, -0.102500774, 0.019517075) * input_1(0.0, 1.0);
    result += mat4(-0.040893275, -0.07140382, -0.04344561, 0.026140068, 0.026780773, 0.113867186, 0.04726239, 0.020701455, 0.013930691, -0.0119596105, -0.08952445, -0.03396855, -0.071008764, -0.09639975, 0.06532184, -0.0069433893) * input_1(1.0, -1.0);
    result += mat4(-0.08736024, -0.15574273, -0.023583993, 0.10254516, -0.16403955, -0.10687341, 0.18899935, -0.057376627, -0.11952331, 0.14854327, 0.090927556, 0.017202213, 0.13836679, 0.03802808, 0.027394783, -0.06163094) * input_1(1.0, 0.0);
    result += mat4(-0.45665753, -0.046222627, 0.08484052, 0.0020289698, -1.526775, 0.104464255, -0.0676304, 0.029291883, -1.266566, -0.01982376, -0.0012975846, 0.016447432, 0.18931435, -0.14027148, -0.14795515, -0.08101526) * input_1(1.0, 1.0);
    result += mat4(-0.0038476633, 0.07411848, 0.21081322, -0.056722656, 0.013799113, -0.03862655, 0.084805965, 0.026093468, -0.036790792, -0.009058014, -0.21769065, -0.06063448, 0.081771925, 0.115908645, 0.03568774, 0.05800628) * input_2(-1.0, -1.0);
    result += mat4(0.056831893, -0.015104973, 0.1990396, -0.0128838355, 0.07947841, -0.06667668, 0.18884039, 0.05107028, -0.048132982, -0.042118248, -0.0691397, -0.015178634, -0.10883737, 0.037828047, 0.64558, -0.38911796) * input_2(-1.0, 0.0);
    result += mat4(0.007236519, 0.0033407763, -0.057496533, -0.10632337, -0.030928181, -0.124152005, 0.22920309, 0.053513326, -0.012113784, 0.11167448, -0.077711545, -0.0017858577, -0.08667004, 0.013698831, 0.06381756, 0.13008583) * input_2(-1.0, 1.0);
    result += mat4(0.046738997, 0.0056339833, -0.28384778, 0.13578182, -0.10809103, -0.13152827, 0.18349679, -0.031551246, -0.017107401, 0.04036048, -0.04056414, 0.025486872, 0.007283392, -0.0811907, 0.043972716, 0.030363636) * input_2(0.0, -1.0);
    result += mat4(0.10741745, -0.061339904, -0.113247074, 0.13625352, 0.038027458, -0.073760375, -0.8402527, 0.006411982, 0.03112244, -0.08145312, 0.17512044, -0.089370824, -0.07388961, -0.077577546, 0.15120347, 0.29062852) * input_2(0.0, 0.0);
    result += mat4(-0.02082994, -0.062803045, -0.009431376, 0.07903652, -0.016892875, -0.025354976, -0.08409174, -0.19934137, -0.011563481, -0.12813517, -0.10396423, 0.034390446, -0.11848254, 0.048773404, 0.38165992, 0.13290873) * input_2(0.0, 1.0);
    result += mat4(0.081880964, -0.022987613, 0.08450871, -0.0013467094, -0.11315363, 0.10044448, 0.17441487, 0.013297394, -0.033972304, -0.047338266, 0.047369283, 0.013866922, 0.024513282, 0.060340777, -0.02035644, 0.011080006) * input_2(1.0, -1.0);
    result += mat4(-0.025449885, 0.049909245, 0.0940732, 0.16140695, -0.010130082, -0.021167623, 0.24100824, 0.062299293, 0.4432232, 0.09971552, 0.0791148, -0.019661913, -0.15108162, -0.08693283, -0.09787325, 0.0026379232) * input_2(1.0, 0.0);
    result += mat4(-0.20264882, -0.12308484, -0.09470449, 0.013169702, -0.86793935, 0.03118813, -0.024565741, 0.056608215, -1.4847127, -0.032966353, 0.028204227, -0.011036357, 0.5835707, -0.08093709, -0.023944473, 0.030915843) * input_2(1.0, 1.0);
    result += mat4(-0.0029501321, 0.023928953, -0.08273479, 0.014939073, 0.06690634, 0.05779362, 0.088605106, -0.029445581, -0.030404756, 0.051842682, 0.16394123, -0.081557825, 0.084518746, -0.11695409, -0.032844126, 0.039074343) * input_3(-1.0, -1.0);
    result += mat4(0.04766109, 0.0048737996, -0.03085119, -0.051164053, -0.1801556, -0.07729526, 0.023635216, 0.034914646, 0.2784545, -0.10319413, 0.0062050624, -0.09403274, -0.07791474, -0.10603785, -0.1613237, -0.042406987) * input_3(-1.0, 0.0);
    result += mat4(-0.057712525, -0.0637592, -0.02403435, 0.047495294, -0.14078747, -0.14517495, -0.036800813, -0.07972114, 0.0012078396, 0.09326307, 0.33842278, -0.21528915, -0.08933804, -0.029467357, 0.042132843, 0.014957279) * input_3(-1.0, 1.0);
    result += mat4(0.029916907, 0.03036588, 0.0029288477, 0.008793956, -0.10962027, 0.1430018, -0.01296546, -0.029349979, 0.06794834, -0.10937151, -0.0004758901, 0.031022998, 0.022782914, -0.08931398, -0.35899967, 0.07226118) * input_3(0.0, -1.0);
    result += mat4(0.31874377, -0.11144162, 0.2541663, -0.18568435, 0.19813728, 0.033617303, -0.25460994, -0.030602086, 0.12032099, -0.007452278, 0.09570838, 0.24961482, 0.32403705, -0.095149845, -0.0235752, -0.0027912634) * input_3(0.0, 0.0);
    result += mat4(0.09790921, -0.1316467, 0.06285795, 0.11124691, 0.14080027, -0.10096954, -0.058930084, -0.10030235, -0.0029424033, -0.09761169, -0.055607162, 0.015570596, -0.011239035, -0.024536151, -0.032091413, 0.065017305) * input_3(0.0, 1.0);
    result += mat4(0.018766917, 0.0041969316, -0.050770234, 0.03219783, 0.12475774, 0.026080886, -0.0041363817, -0.06568012, 0.21773425, 0.06705919, -0.0062455363, -0.056137297, -0.11981916, -0.006947257, 0.20957099, -0.056106746) * input_3(1.0, -1.0);
    result += mat4(-0.048054066, -0.08368573, -0.112973854, -0.0925894, 0.023774298, -0.13606983, -0.013742464, 0.02165915, -0.1531961, -0.016907219, 0.098192565, 0.087925345, -0.07032409, -0.049224235, 0.16880484, -0.009520521) * input_3(1.0, 0.0);
    result += mat4(-0.22755723, 0.06663615, -0.10267844, 0.034525856, 0.11836165, 0.12718856, -0.045019783, -0.027301727, -0.22700474, -0.13790725, 0.05422363, -0.050923847, -0.45799366, -0.015043631, 0.010643797, -0.02275806) * input_3(1.0, 1.0);
    result += vec4(0.017837001, -0.011432242, 0.03757557, 0.12726857);
    return max(result, vec4(0.0));
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-4-ReLU)
//!HOOK NATIVE
//!BIND conv2d_3_tf
//!BIND conv2d_3_tf1
//!BIND conv2d_3_tf2
//!BIND conv2d_3_tf3
//!SAVE conv2d_4_tf
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (conv2d_3_tf_texOff(vec2(x_off, y_off)))
#define input_1(x_off, y_off) (conv2d_3_tf1_texOff(vec2(x_off, y_off)))
#define input_2(x_off, y_off) (conv2d_3_tf2_texOff(vec2(x_off, y_off)))
#define input_3(x_off, y_off) (conv2d_3_tf3_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(0.045232747, 0.2031037, 0.041955803, 0.014291035, -0.041266575, 0.0016903436, -0.021913264, 0.045622416, -0.066311724, 0.036630668, 0.054274864, -0.08958588, -0.04621706, 0.00087682833, -0.03361928, -0.017639695) * input_0(-1.0, -1.0);
    result += mat4(-0.5420707, 0.10556401, -0.3052385, 0.079518616, 0.11818366, -0.038532097, 0.0092582395, 0.016098134, 0.12564744, -0.1071462, 0.11177092, -0.0049153683, -0.15291813, 0.019645706, 0.020319514, 0.054940626) * input_0(-1.0, 0.0);
    result += mat4(-0.054656718, 0.02924887, 0.085829556, 0.02770376, 0.08246507, -0.013524965, 0.022904096, -0.036403414, -0.074910074, 0.089802824, -0.015383268, 0.07145453, -0.088904925, -0.034258805, 0.096676074, -0.03320416) * input_0(-1.0, 1.0);
    result += mat4(0.028890265, -0.06546603, 0.1097784, 0.043674573, 0.14638214, 0.102310725, -0.050214287, -0.028584639, -0.120611414, 0.124764435, 0.057071406, -0.019728303, -0.17478687, -0.02638987, -0.063304015, -0.011392928) * input_0(0.0, -1.0);
    result += mat4(0.06595389, -0.05624134, -0.099090844, -0.08447137, 0.016409477, -0.15417576, -0.18132651, -0.08538004, -0.023940157, 0.07504374, 0.13701893, 0.072640345, -0.06365789, 0.04691235, -0.08110404, -0.072998695) * input_0(0.0, 0.0);
    result += mat4(-0.17816612, 0.011482841, 0.049750492, -0.07653975, -0.017177638, 0.057022236, 0.08907797, 0.010550519, -0.07090081, -0.049098305, -0.0026742443, 0.007914518, 0.06650484, 0.114171796, 0.20753923, 0.064644285) * input_0(0.0, 1.0);
    result += mat4(-0.26776496, -0.038011786, 0.06570745, 0.12797911, 0.8326324, 0.07938828, 0.5579668, -0.1279256, -0.06720724, 0.037661772, 0.06571183, 0.11695544, 0.039257172, 0.039911725, 0.03999605, 0.045898538) * input_0(1.0, -1.0);
    result += mat4(0.24575846, 0.10428197, 0.06226992, 0.03649148, -0.23922841, -0.14183559, 0.057059567, 0.17242531, 0.014394241, -0.042173527, 0.027948087, 0.09299357, -0.06692161, 0.08319333, 0.25461918, 0.16008383) * input_0(1.0, 0.0);
    result += mat4(0.12472332, 0.031341262, 0.0058855605, -0.004662445, 0.20900919, -0.048976634, -0.056716982, 0.10674957, 0.07995364, 0.014559964, -0.12465981, 0.1352203, -0.03672599, 0.07635095, 0.1685582, -0.08408613) * input_0(1.0, 1.0);
    result += mat4(-0.69867885, 0.019238112, -0.009979871, -0.004007145, 0.15026315, 0.06636681, -0.051267844, 0.0090413345, -0.01742043, -0.024386527, -0.09040894, -0.018584602, 0.18894736, 0.02580219, -0.0225715, -0.018994678) * input_1(-1.0, -1.0);
    result += mat4(0.03359131, -0.0033934053, -0.027386189, 0.0024487798, 0.018793767, 0.005191638, 0.1375054, -0.044181403, 0.040665887, -0.03847339, 0.014421805, -0.019724056, 0.20774838, -0.04172355, 0.008133231, 0.033283483) * input_1(-1.0, 0.0);
    result += mat4(-0.21494064, -0.09683866, 0.2153958, -0.055992473, -0.06554321, 0.0115566, 0.012407301, 0.02618278, 0.051757216, -0.07989852, -0.026643027, -0.061176483, 0.022395438, -0.0020409257, 0.0056238933, 0.009384767) * input_1(-1.0, 1.0);
    result += mat4(0.005920061, 0.025621923, 0.013219145, 0.017991424, -0.2036981, 0.03597904, -0.073437154, 0.18095571, -0.03881801, 0.071438126, 0.10128218, 0.02982468, 0.18375415, 0.011262001, 0.00011845805, 0.09292824) * input_1(0.0, -1.0);
    result += mat4(0.0311464, 0.02347124, -0.08880095, 0.054911956, 0.2337289, 0.18565995, 0.2001809, 0.06989484, 0.11862488, 0.121298455, 0.15279342, 0.00045720834, 0.4166718, 0.006003292, 0.093261294, 0.09503864) * input_1(0.0, 0.0);
    result += mat4(-0.41016224, 0.5512484, 0.123727135, 0.01277693, 0.1363194, 0.0025053823, 0.019727556, 0.01786397, 0.034461044, -0.001293053, -0.20145814, 0.14716478, 0.02910424, 0.040101934, -0.08687257, -0.14031784) * input_1(0.0, 1.0);
    result += mat4(-0.106171265, -0.11213032, 0.026732624, 0.1005493, 0.5715954, 0.25121918, -0.20516588, 0.15927148, 0.0012553618, 0.022033693, 0.047477067, 0.008842673, 0.050542276, 0.00181522, -0.042518765, -0.033677123) * input_1(1.0, -1.0);
    result += mat4(0.6263378, 0.24197672, -0.18745518, -0.21650258, -0.3880936, 0.03262258, -0.01678009, -0.09328933, 0.012997011, -0.021325842, -0.06283896, -0.14302343, 0.14837289, -0.024223255, 0.083165154, 0.061538976) * input_1(1.0, 0.0);
    result += mat4(-0.59751505, -0.077578105, -0.2630837, -0.11552698, 0.007857279, 0.009143339, -0.018083245, -0.010895081, -0.016553733, -0.0010120942, -0.048957486, -0.008443049, -0.031905886, 0.535801, 0.6443586, 0.2938842) * input_1(1.0, 1.0);
    result += mat4(-0.48478934, 0.0629472, 0.01841414, -0.023504008, -0.19936198, 0.0640761, 0.013031441, -0.013771018, 0.040314615, -0.0003971696, 0.04627215, -0.015571197, -0.07769385, 0.004201472, 0.04638487, -0.0027590652) * input_2(-1.0, -1.0);
    result += mat4(0.009410933, -0.10684256, 0.09718541, 0.07171831, -0.054604307, -0.08344167, 0.19719887, 0.1413806, -0.12143815, 0.029622266, -0.053563036, -0.003395838, 0.10535914, 0.06748102, -0.0009813521, -0.08317833) * input_2(-1.0, 0.0);
    result += mat4(-0.013725228, 0.0111848535, 0.02813245, 0.014360511, -0.06935898, 0.023991656, -0.049401253, -0.022624869, 0.0077154767, -0.094582506, 0.0027263784, 0.0009670129, -0.07346831, -0.04413616, 0.023499517, 0.12377865) * input_2(-1.0, 1.0);
    result += mat4(-0.030133566, -0.059005853, -0.057352684, 0.0043660575, -0.019068236, 0.068808876, -0.04866432, 0.10512168, 0.05259069, -0.038835887, -0.006927334, -0.07687095, -0.16629465, -0.0026119913, -0.03645347, 0.008104835) * input_2(0.0, -1.0);
    result += mat4(0.1465334, -0.0627042, -0.06384594, 0.1910903, 0.1668051, -0.112791464, 0.0950786, 0.08189051, 0.09957473, 0.14107035, 0.054196157, -0.29902902, 0.05153049, 0.17495255, -0.168749, 0.2978098) * input_2(0.0, 0.0);
    result += mat4(-0.035250895, 0.104946226, -0.04399291, -0.004184832, 0.07628143, 0.1353667, -0.112373956, 0.06360638, -0.06885403, 0.03854636, 0.09000987, 0.0028136573, -0.055144157, -0.009189545, -0.21071222, 0.09060231) * input_2(0.0, 1.0);
    result += mat4(-0.014966874, 0.0032086966, 0.035156745, -0.01996317, -0.022515176, 0.046458878, 0.017847177, -0.057229858, -0.14292374, 0.013353236, 0.02714588, -0.018166492, -0.04938869, 0.018815665, 0.051578496, 0.031138191) * input_2(1.0, -1.0);
    result += mat4(-0.046960667, 0.026446672, 0.060470596, -0.036190957, -0.01028444, -0.047872093, 0.041101642, -0.17393567, -0.09428897, 0.11829356, -0.1313175, -0.071171105, -0.03835056, -0.025062053, -0.06283143, -0.124125235) * input_2(1.0, 0.0);
    result += mat4(-0.096812226, 0.019900208, 0.07507986, -0.05920112, -0.056599356, -0.06332929, -0.06000041, -0.06480668, -0.009711765, 0.38096747, 0.07118568, -0.25807196, 0.04634082, 0.07015166, 0.07700448, -0.0076717176) * input_2(1.0, 1.0);
    result += mat4(-0.24415067, -0.32036793, -0.17888825, 0.008121133, 0.09421563, -0.0883982, -0.015955763, -0.13587119, 0.16345452, 0.0193898, -0.011681132, 0.019329447, -0.055417966, 0.038548775, -0.011099781, -0.05116535) * input_3(-1.0, -1.0);
    result += mat4(-0.29915622, 0.004985152, 0.20761497, 0.121885024, -0.08148541, -0.026523972, -0.09103251, 0.14363869, 0.23427604, -0.055015948, -0.18189521, 0.014407015, 0.18188745, 0.0061969147, 0.013526564, 0.066930965) * input_3(-1.0, 0.0);
    result += mat4(0.03677393, -0.09588115, -0.03318041, -0.067582384, -0.032388557, -0.030748688, 0.021393219, -0.047431644, 0.04293453, -0.05113771, -0.13169171, -0.0388635, -0.043896697, -0.020482948, -0.08485646, -0.016845731) * input_3(-1.0, 1.0);
    result += mat4(-0.23317266, 0.09490278, 0.24996331, 0.03955473, 0.1120005, 0.017769894, -0.10977982, 0.041888777, 0.16420943, -0.08120196, -0.028055258, -0.0012568723, -0.1565781, -0.04188412, 0.039521255, 0.24125963) * input_3(0.0, -1.0);
    result += mat4(0.11195479, 0.017491432, 0.5829607, -0.11361619, 0.069575205, 0.034876082, 0.016816042, -0.09238334, 0.16536488, -0.036838885, 0.54328203, 0.07257776, 0.12317127, 0.09398895, 0.42104703, 0.09282706) * input_3(0.0, 0.0);
    result += mat4(-0.061734576, 0.029207025, 0.01824367, 0.03951099, 0.067763455, 0.11983154, -0.12091433, -0.11181534, -0.13601035, 0.007986832, 0.11151688, 0.11698008, 0.012475666, -0.011612772, -0.1546702, 0.02175283) * input_3(0.0, 1.0);
    result += mat4(-0.10274744, 0.04439842, 0.0047501335, 0.0071452833, 0.12771815, -0.06365909, -0.13428168, 0.06376102, -0.06546123, -0.019119812, 0.00930425, -0.01805318, -0.0043595755, -0.004230216, -0.051960498, -0.08053326) * input_3(1.0, -1.0);
    result += mat4(0.20060146, 0.02163225, 0.026411943, 0.0023793906, -0.044090297, 0.05258522, 0.041100886, -0.10715991, 0.08969382, -0.08916441, 0.09810791, 0.1265174, 0.055434268, -0.041953824, -0.2522418, -0.16249494) * input_3(1.0, 0.0);
    result += mat4(-0.15548661, 0.0026697011, 0.0023247022, 0.020202443, -0.03798664, 0.036014687, -0.02465618, -0.024191217, 0.046109226, 0.13318458, 0.37700817, 0.061546534, -0.05972344, -0.0033398534, -0.09061891, 0.004500927) * input_3(1.0, 1.0);
    result += vec4(-0.06260789, -0.016511174, 0.0026220176, -0.003860973);
    return max(result, vec4(0.0));
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-4-ReLU)
//!HOOK NATIVE
//!BIND conv2d_3_tf
//!BIND conv2d_3_tf1
//!BIND conv2d_3_tf2
//!BIND conv2d_3_tf3
//!SAVE conv2d_4_tf1
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (conv2d_3_tf_texOff(vec2(x_off, y_off)))
#define input_1(x_off, y_off) (conv2d_3_tf1_texOff(vec2(x_off, y_off)))
#define input_2(x_off, y_off) (conv2d_3_tf2_texOff(vec2(x_off, y_off)))
#define input_3(x_off, y_off) (conv2d_3_tf3_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(0.10884608, 0.09306511, 0.01990951, -0.10846925, 0.055573218, 0.040231466, -0.011677291, -0.034542203, -0.14271723, 0.08645443, -0.038072318, 0.09384859, 0.007302748, -0.017957415, 0.01941549, 0.010432028) * input_0(-1.0, -1.0);
    result += mat4(0.1385752, 0.082855895, -0.032540802, -0.022339292, -0.018931689, -0.0029990303, -0.015736924, -0.03128662, -0.043460846, 0.079158045, 0.09591588, 0.09491631, 0.049176093, -0.04369098, -0.10822576, -0.034133673) * input_0(-1.0, 0.0);
    result += mat4(0.022297392, -0.00094272045, 0.00954627, 0.0061789965, -0.025563763, -0.036844715, 0.02072708, 0.04671383, -0.050811745, 0.12586372, -0.09148602, 0.07663188, -0.05194768, 0.00026059398, -0.037749015, 0.018448817) * input_0(-1.0, 1.0);
    result += mat4(-0.10322636, 0.009055019, 0.14044276, 0.047306858, 0.123177275, 0.12504512, 0.013109764, 0.2908786, 0.08556596, -0.10083702, 0.018962115, 0.11263297, 0.051334802, 0.047403187, -0.054186147, 0.00042036807) * input_0(0.0, -1.0);
    result += mat4(-0.020132545, -0.19097726, 0.18542786, -0.0574232, 0.17481363, -0.021621218, -0.049552426, -0.12686642, -0.10025092, -0.120895915, 0.05118922, -0.01633234, -0.026690537, -0.15588, -0.0065428745, -0.008839328) * input_0(0.0, 0.0);
    result += mat4(-0.015157914, -0.0005209426, 0.037675668, -0.059478767, 0.086169146, -0.01712084, 0.028832393, 0.13059644, 0.021220807, 0.004380539, 0.10830771, -0.058392063, 0.17957671, -0.05196169, 0.036602374, -0.017497605) * input_0(0.0, 1.0);
    result += mat4(-0.09342645, 0.044581972, 0.012459826, -0.075753875, 0.40926024, -0.076015, 0.10051933, 0.43349442, 0.102227345, 0.0071105226, 0.06367731, -0.027362593, -0.05545277, 0.049963992, -0.015304582, 0.024065971) * input_0(1.0, -1.0);
    result += mat4(0.0380873, 0.00034033635, -0.060141545, -0.018351287, 0.22075291, 0.009684348, -0.094151415, 0.2232467, 0.008348422, -0.01295061, -0.115529835, 0.044777967, 0.122096926, 0.02768473, 0.41499463, 0.008085904) * input_0(1.0, 0.0);
    result += mat4(0.056587197, 0.0074495003, 0.03183261, -0.0007042552, 0.12798698, 0.028140567, -0.028174063, 0.06332684, -0.010235879, 0.029896535, 0.10593322, 0.12515059, 0.12184717, 0.013423858, 0.25234526, -0.048829164) * input_0(1.0, 1.0);
    result += mat4(-0.008743186, -0.02451959, 0.024796452, 0.026810236, 0.004963356, 0.013844755, 0.0654725, -0.035251997, 0.032307405, 0.009972384, -0.09039522, -0.10303704, -0.009310063, 0.047647785, -0.0581267, -0.023952613) * input_1(-1.0, -1.0);
    result += mat4(-0.0038108714, 0.017340202, 0.01860001, 0.015701512, -0.059794094, -0.013231079, 0.06140372, 0.0114175165, 0.050444458, 0.035236903, -0.20988268, -0.025556425, 0.05608708, 0.05192098, -0.039581243, -0.021769376) * input_1(-1.0, 0.0);
    result += mat4(-0.0025751742, -0.008814934, -0.030294856, 0.06818293, 0.012963951, -0.0037635637, -0.07229041, 0.009602077, -0.10177923, -0.056137264, 0.004982582, 0.062295448, -0.021669718, -0.0661987, 0.019847065, -0.02459739) * input_1(-1.0, 1.0);
    result += mat4(-0.051076666, -0.042425573, -0.030817809, -0.029235194, -0.1730143, -0.085126944, -0.14087889, 0.0034116942, -0.009900533, 0.051202454, -0.06936593, 0.11508188, -0.034271214, -0.022587039, 0.027879162, 0.044859488) * input_1(0.0, -1.0);
    result += mat4(0.06538075, 0.046462543, 0.0127394255, -0.107368216, 0.039975416, 0.14175117, -0.13499266, 0.15575399, -0.016470347, -0.009808507, -0.057260524, -0.1977457, 0.14297485, -0.13224953, -0.011466461, -0.108402476) * input_1(0.0, 0.0);
    result += mat4(0.11082116, -0.33144844, 0.1861538, -0.15724228, -0.016114827, 0.040249694, -0.01581003, -0.015749093, -0.011273386, -0.019147474, 0.06886486, 0.17871754, 0.022531783, 0.15274322, -0.13939537, 0.12088474) * input_1(0.0, 1.0);
    result += mat4(-0.055505525, -0.3310713, 0.05925973, -0.0134763885, 0.16293131, 0.34125665, 0.27989072, 0.20270902, -0.052688826, 0.00076802896, 0.048650958, -0.029707305, -0.005883271, -0.009913558, 0.0009727573, 0.0034355186) * input_1(1.0, -1.0);
    result += mat4(0.023553431, -0.3824144, -0.2122482, -0.075424746, 0.0094292825, 0.051670235, 0.17084159, -0.03347584, -0.008017909, -0.08229007, -0.19117786, -0.008875161, -0.052459586, -0.13902028, 0.15243027, 0.14977439) * input_1(1.0, 0.0);
    result += mat4(-0.08458006, 0.5332253, -0.3496158, 0.068083026, -0.017597117, -0.062151752, 0.06528454, 0.030794058, -0.06544444, -0.0026986252, 0.010840788, -0.03536414, 0.892678, 0.10458393, 0.7196839, -0.27874443) * input_1(1.0, 1.0);
    result += mat4(-0.029922022, 0.0017889692, 0.05535991, 0.053690806, 0.008073474, 0.0685858, 0.162269, 0.094829634, -0.017367449, -0.016833236, -0.023144376, -0.022093065, 0.041823663, -0.03194872, 0.068710655, 0.036657676) * input_2(-1.0, -1.0);
    result += mat4(0.011766934, 0.01576454, -0.015977126, 0.030152196, 0.08686366, 0.06842629, -0.32952994, -0.23518448, 0.01937123, 0.06206158, -0.026696393, 0.014167573, -0.14688285, 0.046582475, 0.10541853, 0.0642416) * input_2(-1.0, 0.0);
    result += mat4(0.008960003, 0.049444295, -0.066245005, 0.015011691, -0.036998663, -0.07953045, 0.05595005, 0.084450886, -0.033814877, -0.017590998, -0.01916842, 0.036018465, 0.094247416, 0.089370236, -0.08347664, 0.06494282) * input_2(-1.0, 1.0);
    result += mat4(0.006106299, 0.0006073455, 0.025649495, -0.053794213, -0.06704555, -0.10768143, 0.00904063, 0.049011733, 0.02099918, -0.0013007587, 0.09585382, 0.05879762, 0.029628154, -0.016424118, -0.04886036, 0.017767271) * input_2(0.0, -1.0);
    result += mat4(-0.05851964, -0.16047288, -0.21749814, -0.018341474, 0.0545754, 0.21581252, 0.08209073, 0.0030455906, -0.06717035, 0.064927615, -0.07054869, -0.03314951, -0.0451039, 0.15501471, -0.07134293, -0.008909244) * input_2(0.0, 0.0);
    result += mat4(0.19282623, 0.06603457, 0.13916714, 0.07676053, 0.10508595, 0.15098259, -0.14384341, 0.1327801, -0.057787523, -0.0016076406, 0.09117326, -0.064461656, 0.022698216, -0.09329268, -0.093471594, 0.14561296) * input_2(0.0, 1.0);
    result += mat4(0.042918354, 0.025931612, 0.098004274, -0.013566585, -0.002139811, -0.13966903, 0.034557812, 0.04185481, 0.01886227, 0.0068155294, -0.029031938, -0.03927219, -0.03374088, -0.009678264, 0.003609282, -0.025561381) * input_2(1.0, -1.0);
    result += mat4(0.056032993, -0.250227, -0.08631914, 0.10611574, -0.050572105, -0.008019865, 0.035848957, -0.073467135, 0.055249337, 0.08307017, 0.009537365, 0.08127355, 0.036752466, -0.025249194, -0.11321662, -0.06719164) * input_2(1.0, 0.0);
    result += mat4(0.042824455, 0.0018012763, -0.047461953, -0.065530986, -0.078163795, -0.09558134, 0.106442966, -0.042648967, 0.12939362, -0.16214472, 0.05584701, 0.14984551, -0.11682429, 0.07648062, 0.03060563, -0.096802436) * input_2(1.0, 1.0);
    result += mat4(0.108224615, 0.1431455, 0.0031775685, 0.6331347, -0.08106879, -0.11425867, -0.090545334, -0.040559, 0.013549881, -0.03682568, -0.06659088, -0.039186172, -0.057008736, 0.0665299, 0.067014456, 0.019420313) * input_3(-1.0, -1.0);
    result += mat4(0.10805639, 0.1445103, -0.10196492, 0.042287156, 0.052840106, -0.047811802, -0.07255046, 0.0325878, 0.030387957, 0.015294667, -0.06550579, 0.041882582, 0.04191085, 0.049155746, 0.06784739, -0.07251806) * input_3(-1.0, 0.0);
    result += mat4(-0.10877439, 0.028479844, 0.13438785, 0.11879106, 0.10072825, 0.021996494, 0.017801289, -0.00014270896, -0.015884824, 0.00955623, -0.06902847, 0.08020347, 0.048665766, 0.032712925, -0.099449135, -0.013491874) * input_3(-1.0, 1.0);
    result += mat4(0.0025538376, 0.12810625, 0.09525639, 0.040763266, 0.049787637, -0.024668833, 0.015375116, 0.039501555, 0.04365886, 0.013569741, 0.020751098, -0.0055519035, -0.045423623, -0.01804111, 0.119400464, -0.0799015) * input_3(0.0, -1.0);
    result += mat4(-0.06379546, -0.049270477, -0.02831607, -0.040486723, 0.052591983, 0.014866336, 0.107587084, -0.0805332, 0.088948324, 0.045164663, 0.3598495, 0.50784844, 0.07947609, 0.21128517, 0.037722494, -0.039336454) * input_3(0.0, 0.0);
    result += mat4(0.020435486, -0.0068445867, -0.03967577, -0.060125623, 0.062499676, -0.042120427, -0.05984105, 0.121230885, -0.15896343, -0.10237795, 0.12138551, 0.047604583, 0.06905827, 0.035813197, 0.007450187, 0.15692037) * input_3(0.0, 1.0);
    result += mat4(0.0015891984, 0.11259187, 0.00071000407, -0.046613082, 0.08948034, 0.0065236366, 0.11537983, 0.12675948, -0.026901463, 0.041668758, 0.019579008, -0.028959969, -0.04815171, -0.116184026, -0.040951457, 0.048429076) * input_3(1.0, -1.0);
    result += mat4(-0.024586516, -0.018931692, 0.011699323, 0.069870345, 0.11575072, 0.052709326, 0.06294959, 0.014557992, 0.026599132, -0.03701277, -0.030839967, -0.010920587, 0.028596979, -0.008093589, 0.07229524, 0.029707767) * input_3(1.0, 0.0);
    result += mat4(-0.012007453, 0.013989855, 0.011894686, -0.012762865, -0.072612174, -0.015021267, -0.12512568, -0.10660897, 0.1488826, 0.02377858, 0.29548755, -0.0621721, -0.07605906, 0.010450934, 0.10927465, 0.022915116) * input_3(1.0, 1.0);
    result += vec4(0.014962638, 0.039453946, 0.062681116, -0.0013995529);
    return max(result, vec4(0.0));
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-4-ReLU)
//!HOOK NATIVE
//!BIND conv2d_3_tf
//!BIND conv2d_3_tf1
//!BIND conv2d_3_tf2
//!BIND conv2d_3_tf3
//!SAVE conv2d_4_tf2
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (conv2d_3_tf_texOff(vec2(x_off, y_off)))
#define input_1(x_off, y_off) (conv2d_3_tf1_texOff(vec2(x_off, y_off)))
#define input_2(x_off, y_off) (conv2d_3_tf2_texOff(vec2(x_off, y_off)))
#define input_3(x_off, y_off) (conv2d_3_tf3_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(0.05351122, 0.23319505, 0.21390986, -0.2603466, -0.016430859, -0.074837804, -0.04079409, -0.081645064, 0.13359572, -0.08799491, -0.11580255, 0.11818906, 0.0309081, 0.041152775, -0.0051418357, -0.010418778) * input_0(-1.0, -1.0);
    result += mat4(0.17891005, -0.3038097, 0.06727021, 0.048912566, 0.03147375, 0.045519505, 0.09875358, 0.0022048892, 0.06385694, 0.0819102, -0.13574423, 0.059530675, 0.02932029, -0.16266608, -0.047875784, 0.0152424015) * input_0(-1.0, 0.0);
    result += mat4(0.114603184, 0.119041614, 0.04184867, -0.028801836, 0.063020356, 0.026841965, 0.05375368, 0.012781088, -0.010219211, -0.11536475, -0.050842524, -0.061247695, -0.009629678, 0.15054385, 0.013887389, -0.058955774) * input_0(-1.0, 1.0);
    result += mat4(0.15846112, -0.05691477, 0.1303339, -0.42936298, 0.18083687, 0.10621862, 0.1480453, -0.01632815, -0.13104577, -0.08095316, 0.04788087, -0.025315193, -0.018642211, 0.13304561, 0.03646953, -0.10207713) * input_0(0.0, -1.0);
    result += mat4(0.0039394903, -0.13835153, 0.09581305, -0.5331906, 0.09130517, -0.124383755, 0.043026958, 0.25458616, 0.12750305, 0.113583006, -0.04732933, 0.064706475, 0.15733407, -0.35491195, 0.007837009, -0.18640575) * input_0(0.0, 0.0);
    result += mat4(-0.048228152, 0.0725344, -0.027005717, -0.022059849, 0.16088247, 0.12470281, -0.0003189793, 0.026503254, -0.052707713, -0.038654737, 0.05273569, -0.12043484, 0.13213718, 0.31093997, -0.099016935, -0.19953841) * input_0(0.0, 1.0);
    result += mat4(0.21205726, 0.08311346, 0.060230657, -0.7297847, -0.05824874, -0.048404153, -0.07119001, -0.13762668, 0.076216474, -0.10366436, 0.06885446, 0.049216274, 0.018980613, 0.016534079, 0.0076288506, 0.05191571) * input_0(1.0, -1.0);
    result += mat4(0.018178318, -0.10278728, 0.0024758065, 0.5307594, 0.10967651, -0.09407084, -0.10326779, -0.04395449, 0.12593365, -6.4194637e-06, 0.10154658, -0.12734607, 0.26416877, 0.21056145, 0.10299624, 0.23539883) * input_0(1.0, 0.0);
    result += mat4(0.008445271, -0.0040305415, 0.015320526, 0.04792069, -0.06384472, -0.104719214, -0.05281008, 0.009665071, 0.030377511, 0.122322544, 0.07406701, 0.069300115, 0.13743941, 0.20291199, 0.057758212, 0.19444546) * input_0(1.0, 1.0);
    result += mat4(0.0077713076, 0.025073618, 0.0035175292, 0.013276724, 0.001997505, -0.05259512, -0.08398864, 0.066068016, -0.05967996, 0.0046140165, -0.025029823, -0.032389306, -0.021489322, 0.034050122, -0.029081143, 0.051168956) * input_1(-1.0, -1.0);
    result += mat4(0.016963372, -0.029117713, -0.055513557, 0.037203733, 0.098364726, 0.08432354, -0.042725466, 0.03706055, -0.24233997, -0.16907707, -0.13072398, 0.027273875, -0.031500187, 0.041849744, 0.033743892, 0.0013811726) * input_1(-1.0, 0.0);
    result += mat4(-0.014276801, 0.002015062, 0.07898858, -0.036188688, -0.031609282, 0.026317228, -0.03156735, -0.0041181413, -0.044612054, 0.035849653, 0.03450782, 0.04356796, 0.047566183, -0.040357944, 0.012451297, -0.02172961) * input_1(-1.0, 1.0);
    result += mat4(-0.0696531, 0.09967511, -0.02205064, -0.01619852, 0.064012356, -0.23175748, 0.088974126, 0.15465301, 0.051621653, -0.015276294, 0.0031078702, -0.1256442, 0.022635695, 0.06927172, -0.0031944683, 0.083612904) * input_1(0.0, -1.0);
    result += mat4(-0.21894045, 0.012019615, -0.02106475, -0.08701379, 0.06310649, 0.2754189, 0.104865775, 0.20056973, 0.032049313, -0.38695905, -0.0054889685, -0.28226665, 0.1775937, 0.04186611, 0.121398434, 0.039764658) * input_1(0.0, 0.0);
    result += mat4(0.2968457, 0.5265242, -0.22243479, -0.26343682, -0.00740061, -0.031675383, 0.08249874, -0.012466895, 0.10028887, 0.07320561, 0.044319093, -0.22794701, -0.1031806, -0.14919059, -0.0007360108, 0.061062165) * input_1(0.0, 1.0);
    result += mat4(-0.09286483, 0.08964538, -0.17122726, 0.118139856, -0.024304021, -0.7432126, 0.58826804, 0.055975627, 0.06979671, 0.09091309, 0.036937892, -0.11195574, -0.015685553, 0.03176024, -0.01222331, 0.08227688) * input_1(1.0, -1.0);
    result += mat4(0.44456637, -0.25544673, 0.2195958, 0.3636045, 0.016816288, 0.12592523, 0.07667084, -0.22021727, -0.15858868, -0.21692249, -0.066351116, 0.098608986, 0.065574795, 0.17568551, -0.050956327, -0.11324034) * input_1(1.0, 0.0);
    result += mat4(-0.769194, 0.9123294, -0.82523924, -0.36743295, 0.038343184, -0.0683001, -0.034247935, 0.0052297986, -0.03800161, 0.060719907, 0.07650832, 0.0751299, 0.50005203, -0.3866704, 0.27408522, -1.1013896) * input_1(1.0, 1.0);
    result += mat4(0.054709293, 0.033240262, -0.011319338, 0.022578435, 0.015151277, -0.014993878, -0.03449516, 0.12988806, -0.025720296, 0.00092472305, 0.005782907, -0.025870083, 0.022987392, -0.034530126, 0.033010874, 0.029520692) * input_2(-1.0, -1.0);
    result += mat4(0.15329553, -0.15289085, 0.009166968, 0.16529778, 0.07800675, -0.03978603, -0.03254042, -0.040036056, 0.07394014, -0.04626938, 0.034251392, -0.037602037, 0.15741979, 0.041603383, -0.16129419, 0.15518892) * input_2(-1.0, 0.0);
    result += mat4(0.02441426, 0.23979896, 0.033211816, -0.03614108, -0.006865314, -0.10150259, 0.10324857, -0.040351633, 0.011547805, -0.0017719, 0.09514794, -0.06147581, 0.058893017, -0.030744322, 0.03501705, 0.112508856) * input_2(-1.0, 1.0);
    result += mat4(0.016574787, -0.030317646, 0.06327842, -0.020655178, 0.15710025, -0.15335687, -0.059909165, -0.04230481, 0.027625687, 0.02991449, -0.0035703285, 0.07592505, -0.028654728, -0.02775164, -0.03178904, -0.1588752) * input_2(0.0, -1.0);
    result += mat4(-0.04552761, -0.015671795, -0.09744143, 0.45086095, -0.41437152, 0.5600448, 0.07928736, 0.03239522, 0.60625815, -0.24837455, -0.034710012, 0.11594696, 0.019707033, 0.44305748, 0.009693827, -0.29092124) * input_2(0.0, 0.0);
    result += mat4(0.17784332, 0.11332983, 0.06938502, -0.2174125, -0.016244927, -0.26494548, -0.0782922, 0.041533485, 0.22178291, 0.18491352, 0.16543527, -0.011237086, 0.1618774, -0.19092321, -0.046603702, 0.027662514) * input_2(0.0, 1.0);
    result += mat4(0.02055337, -0.012005371, 0.04399822, -0.029427184, -0.004911139, 0.05212027, -0.093271546, 0.13648394, -0.032431275, -0.052610293, 0.04793032, -0.10249807, 0.06576039, 0.017654743, -0.023052512, -0.06577679) * input_2(1.0, -1.0);
    result += mat4(-0.06190784, -0.10229739, -0.15461722, 0.37206796, 0.17214583, 0.02567785, 0.01532462, -0.043113794, 0.096315816, 0.060793053, 0.16385435, -0.26206014, -0.051476497, 0.15674962, -0.021507708, -0.074538335) * input_2(1.0, 0.0);
    result += mat4(-0.037738774, 0.13001487, -0.048579156, 0.41121173, 0.0639422, -0.014461731, 0.091068484, -0.047319222, -0.34536216, 0.21064511, 0.3225195, -0.15888368, 0.04159285, -0.060704798, 0.1452952, -0.06715521) * input_2(1.0, 1.0);
    result += mat4(0.17386983, 0.7506598, -0.4481739, 0.073916435, 0.10923212, -0.0019453039, -0.06542228, -0.11200062, -0.015466106, -0.041420046, 0.0010285227, -0.0030416772, -0.072922744, 0.17944232, -0.03316363, 0.1220817) * input_3(-1.0, -1.0);
    result += mat4(0.07376042, -0.10784078, 0.086490646, -0.5425851, 0.05550641, -0.0543457, -0.07951501, -0.010361736, -0.17388831, 0.086156696, 0.045735072, 0.032699294, -0.011955729, -0.11730481, -0.012181864, 0.20013344) * input_3(-1.0, 0.0);
    result += mat4(0.0936327, 0.0038855018, 0.072752334, -0.088697135, 0.007433678, 0.03288626, -0.054030918, -0.047150202, -0.043878537, -0.17108972, -0.025973635, 0.006992043, -0.032584786, 0.1098934, 0.010730712, 0.05709372) * input_3(-1.0, 1.0);
    result += mat4(0.16353072, -0.044013746, -0.05938978, -0.05514456, -0.024356304, -0.057459448, 0.053535894, -0.1359147, -0.034941696, -0.043657634, 0.031320922, 0.035558958, 0.02450183, 0.38800716, -0.036364205, -0.21326642) * input_3(0.0, -1.0);
    result += mat4(0.5090619, -0.006632982, -0.21629956, -0.85561764, -0.06113322, 0.06281421, -0.07212352, -0.059216388, 0.17227909, 0.17033382, -0.034553465, -0.20233227, -0.04178187, -0.47111994, 0.016575644, -0.0694404) * input_3(0.0, 0.0);
    result += mat4(-0.034264777, 0.22342394, -0.036101356, -0.017475046, -0.039955586, 0.105220504, -0.04217868, 0.032421213, 0.12054834, -0.5855308, 0.1616279, -0.08673581, 0.07467507, 0.13094033, 0.07594482, 0.044599194) * input_3(0.0, 1.0);
    result += mat4(0.038256723, 0.02666475, 0.026624355, -0.4013556, -0.01430173, -0.011784613, -0.07638297, -0.08639602, 0.022226827, -0.13034016, -0.006676234, -0.04224299, 0.045126498, -0.00012835421, -0.14115442, -0.081841275) * input_3(1.0, -1.0);
    result += mat4(0.06649878, -0.11009607, -0.0449242, 0.35407415, -0.050861537, 0.11829781, -0.13951682, -0.08265915, 0.15676372, -0.017637985, -0.16356254, -0.21481217, -0.056069233, -0.0608714, 0.06883888, -0.21390511) * input_3(1.0, 0.0);
    result += mat4(-0.011965669, 0.116853215, 0.00802098, 0.04606846, -0.04029288, -0.06312224, 0.12967561, 0.015782703, 0.19351648, -0.13939282, 0.06436374, -0.014390707, 0.019592853, 0.053915817, 0.13772078, -0.02615249) * input_3(1.0, 1.0);
    result += vec4(-0.07133209, -0.017605565, 0.03961981, 0.013646584);
    return max(result, vec4(0.0));
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-4-ReLU)
//!HOOK NATIVE
//!BIND conv2d_3_tf
//!BIND conv2d_3_tf1
//!BIND conv2d_3_tf2
//!BIND conv2d_3_tf3
//!SAVE conv2d_4_tf3
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (conv2d_3_tf_texOff(vec2(x_off, y_off)))
#define input_1(x_off, y_off) (conv2d_3_tf1_texOff(vec2(x_off, y_off)))
#define input_2(x_off, y_off) (conv2d_3_tf2_texOff(vec2(x_off, y_off)))
#define input_3(x_off, y_off) (conv2d_3_tf3_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(-0.43492568, 0.14407036, 0.18627325, -0.21902056, -0.16455925, -0.011445568, -0.062342875, 0.007898209, -0.08535561, -0.05098779, 0.088348016, -0.05201933, -0.5323348, 0.003792842, -0.031283397, -0.0020982763) * input_0(-1.0, -1.0);
    result += mat4(0.1453068, -0.13437085, -0.34935927, -0.16409811, -0.031922225, -0.006445774, -0.005252538, -0.029339274, 0.040007334, -0.06517498, 0.021847408, 0.13096057, 0.06005928, 0.010743039, -0.0427773, -0.021762826) * input_0(-1.0, 0.0);
    result += mat4(-0.39615884, 0.042575326, 0.0088421805, 0.031653076, -0.0062709167, 0.06631977, 0.029327994, 0.059027705, 0.115068674, -0.04127672, 0.12511705, -0.009388456, -0.06510137, 0.114082895, 0.038911447, 0.056967646) * input_0(-1.0, 1.0);
    result += mat4(0.6683399, -0.0602035, 0.26852804, 0.04333566, -0.18202521, 0.093147926, 0.077156454, -0.12609428, -0.02906835, 0.060338665, 0.0060294173, 0.06505193, 0.33423635, -0.044093248, -0.010534024, 0.0044105384) * input_0(0.0, -1.0);
    result += mat4(0.5881629, -0.022267744, -0.046107724, -0.0417479, 0.10973979, -0.49028733, 0.43499774, -0.1203967, 0.02367564, 0.06286099, 0.07368676, -0.041197672, -0.17107847, 0.27380076, -0.044074927, -0.06212518) * input_0(0.0, 0.0);
    result += mat4(-0.17744409, -0.0013548827, 0.14521909, 0.08921525, 0.060435332, 0.13375327, 0.030535541, 0.08989472, 0.069568664, 0.041214053, -0.10752222, 0.108956166, -0.046396807, 0.16405527, 0.21044534, 0.2057363) * input_0(0.0, 1.0);
    result += mat4(0.23994948, 0.02365297, -0.05741624, 0.0030743226, 0.047088843, 0.011282781, -0.30811685, 0.07239799, -0.047143206, 0.06489885, 0.0027871036, 0.13377321, -0.21594872, -0.010826811, -0.02005388, 0.029670753) * input_0(1.0, -1.0);
    result += mat4(0.03263515, 0.07381868, -0.077040374, 0.06661284, 0.14040242, -0.050761327, -0.06998018, -0.099696636, -0.035379, -0.082526974, 0.1412625, 0.023898289, -0.097641066, 0.07844881, 0.03855779, 0.12547413) * input_0(1.0, 0.0);
    result += mat4(-0.20390458, 0.047274206, 0.08542037, 0.08100471, -0.06324514, -0.080198854, -0.024067858, 0.10142937, 0.06733689, 0.030469563, 0.039364316, 0.00931491, 0.01134828, 0.10285226, 0.36369005, 0.4999388) * input_0(1.0, 1.0);
    result += mat4(-0.2079777, -0.020148734, 0.009195725, -0.0053293766, 0.029769663, 0.008111224, -0.09288081, 0.08192323, -0.9575456, 0.052652556, 0.015239789, 0.0034659079, -0.05542741, -0.039089892, 0.02277502, -0.0059997593) * input_1(-1.0, -1.0);
    result += mat4(-0.0061307955, -0.068997525, 0.047225233, -0.010303151, 0.024821209, 0.101194754, 0.14785111, 0.006339331, 0.13353592, 0.014441513, 0.06588009, 0.068725675, -0.06539254, -0.032305207, -0.047499306, 0.022125265) * input_1(-1.0, 0.0);
    result += mat4(-0.1800809, 0.08372324, 0.01484532, 0.043939125, -0.20330621, -0.02975378, -0.036112364, -0.000575796, -0.20168781, 0.024615595, 0.2582805, 0.12554878, -0.07519578, 0.016835693, -0.012462226, 0.014918496) * input_1(-1.0, 1.0);
    result += mat4(-0.026544183, -0.05790404, 0.07839982, -0.0039504883, 0.24255466, 0.17126374, 0.30287087, 0.0007660004, -0.39366746, -0.10262234, -0.054599606, 0.061546132, -0.674333, 0.019676285, -0.09248927, -0.046068236) * input_1(0.0, -1.0);
    result += mat4(-0.003849339, 0.011173795, -0.23364179, 0.041698, 0.5381404, 0.2796356, 0.3676532, 0.2870611, -0.13680227, -0.09792399, -0.3216659, 0.06715413, 0.12256275, 0.2015345, 0.16028754, -0.020969091) * input_1(0.0, 0.0);
    result += mat4(-0.37779313, 0.030413179, 0.040994894, 0.05738631, -0.17210566, -0.0032565326, 0.02402177, -0.01630902, 0.04057665, 0.13645163, -0.18878277, -0.038016167, 0.1740385, 0.09186697, 0.33759025, 0.007739204) * input_1(0.0, 1.0);
    result += mat4(0.18561547, 0.014422527, -0.10606365, -0.009849955, 0.8559521, -0.057510156, -0.100832105, 0.15443173, -0.13616514, -0.019604048, -0.055339135, 0.037215505, -0.08289736, 0.022526057, 0.052618355, -0.003213414) * input_1(1.0, -1.0);
    result += mat4(-0.13284755, 0.15215433, 0.5827685, -0.08739545, 0.19123337, -0.010408626, 0.14500065, 0.23595576, 0.004598922, -0.019735878, -0.01633367, -0.07222003, 0.08734073, 0.12950945, 0.10939013, 0.048048727) * input_1(1.0, 0.0);
    result += mat4(-1.6715131, -0.7624359, -0.18145567, 0.06176705, -0.09976555, 0.029211069, -0.051419787, 0.0595293, 0.04624153, -0.046821825, -0.06921636, -0.065370806, 0.034838025, 0.039493684, 0.094531596, 0.4232794) * input_1(1.0, 1.0);
    result += mat4(0.019831212, -0.010576271, -0.028329391, 0.020589048, -0.5163419, -0.016410634, -0.029570067, -0.0011934831, -0.2532072, -0.027104512, 0.026122404, -0.019685656, -0.6163269, 0.0465508, 0.00021364784, -0.025534648) * input_2(-1.0, -1.0);
    result += mat4(0.0029058706, 0.01397084, 0.031509534, 0.04170545, -0.076307125, -0.052646335, -0.05379042, 0.16510685, 0.0071921144, 0.042223636, -0.0029636624, 0.030800635, -0.105964474, -0.020622887, 0.079924576, -0.060144827) * input_2(-1.0, 0.0);
    result += mat4(-0.053361196, 0.039785255, -0.059553, 0.015550887, -0.007255365, -0.03581867, 0.1116379, 0.017213725, -0.009461504, 0.020641724, 0.0025313755, 0.015990624, 0.011055685, -0.04112299, -0.04178341, -0.045754354) * input_2(-1.0, 1.0);
    result += mat4(-0.07112144, 0.08194467, 0.11273783, -0.022017738, -0.4407022, -0.22056422, 0.058027543, -0.02471379, 0.07556299, -0.012356371, -0.034183104, 0.045687456, 0.07687431, 0.0039470294, 0.07375907, 0.05513095) * input_2(0.0, -1.0);
    result += mat4(-0.06411187, -0.22109294, 0.14352486, -0.10123666, 0.41332233, 0.18633269, 0.12872308, -0.09142757, -0.26354787, -0.048513226, 0.34131595, -0.19262755, 0.09745757, 0.06585704, -0.18335545, 0.0982687) * input_2(0.0, 0.0);
    result += mat4(0.28591877, 0.22752634, -0.13615726, 0.035493482, 0.09121723, 0.024520414, -0.119743705, -0.100514494, -0.15761806, -0.09676297, 0.27360654, -0.029260747, -0.0017819924, -0.060629632, -0.07628422, 0.2690711) * input_2(0.0, 1.0);
    result += mat4(-0.053454578, -0.06391985, 0.026484407, 0.025727378, -0.07932812, 0.039256945, -0.012683792, 0.06467562, 0.28240234, 0.0751829, 0.05840853, 0.01944415, -0.1262334, -0.04485457, -0.09400454, 0.041978065) * input_2(1.0, -1.0);
    result += mat4(-0.00558834, -0.14795476, -0.03346134, 0.05801617, -0.08926135, 0.054117527, -0.10647933, -0.17822313, -0.2410168, -0.15903746, 0.006258925, 0.05019238, 0.1279577, 0.1661075, -0.07143359, -0.013877818) * input_2(1.0, 0.0);
    result += mat4(0.08708401, -0.17553082, -0.18346508, -0.1581384, -0.09259972, 0.039430887, 0.043838907, 0.1904301, 0.08026292, 0.004400997, -0.0039084214, 0.20735987, -0.08155516, 0.039368633, 0.050820068, 0.11475362) * input_2(1.0, 1.0);
    result += mat4(-0.07838653, 0.161498, -0.031936537, 0.055828188, -0.10652342, 0.05228575, 0.1020779, -0.002409084, 0.24209933, -0.046023674, 0.0301773, 0.0089849485, -0.75013024, -0.15975143, 0.052994445, -0.08114707) * input_3(-1.0, -1.0);
    result += mat4(-0.2001971, 0.10402301, 0.09827558, -0.09484625, -0.06490537, 0.14764585, -0.11525582, -0.106993094, 0.05051915, -0.10585955, 0.018390408, -0.1007807, -0.0043413523, -0.11736742, 0.08340098, 0.02562956) * input_3(-1.0, 0.0);
    result += mat4(-0.23853336, 0.18569574, 0.12802134, 0.1444902, -0.07319077, 0.14132492, -0.13827783, -0.093239345, -0.000392579, -0.059330873, 0.027548568, -0.07782283, -0.06075718, -0.077846386, -0.008565531, 0.003459063) * input_3(-1.0, 1.0);
    result += mat4(0.09440145, 0.010529555, 0.033590395, -0.082221374, -0.06775572, 0.075829156, 0.13603652, 0.13858318, 0.16557904, 0.0020113888, -0.058407232, -0.075826, -0.1426502, -0.059775416, -0.14138898, 0.10588286) * input_3(0.0, -1.0);
    result += mat4(-0.36667326, 0.0059509203, 0.217982, 0.26751298, 0.006929089, -0.02772083, -0.059820216, 0.013445678, 0.18311273, 0.0074796584, -0.17074724, 0.2859816, 0.1793366, 0.35953745, 0.102930486, -0.2556768) * input_3(0.0, 0.0);
    result += mat4(0.116790205, -0.066963285, 0.0046747345, -0.1574977, 0.008688331, -0.11877362, 0.026714366, -0.020374615, -0.018322578, 0.2619484, -0.12951693, 0.0919958, 0.107095994, 0.10361279, 0.05452923, 0.122393385) * input_3(0.0, 1.0);
    result += mat4(-0.16035452, -0.00239687, -0.013881753, -0.0056152, 0.12169927, 0.041516464, -0.044860445, -0.029553026, 0.04659388, 0.056279205, 0.027534492, -0.0059435903, -0.096471384, 0.0689053, 0.045116812, -0.062713616) * input_3(1.0, -1.0);
    result += mat4(-0.028741812, 0.029646778, 0.026563652, 0.05959278, -0.0054595796, 0.10810184, 0.057141718, -0.08229513, 0.03237148, 0.10377435, 0.15926376, -0.023371875, 0.07719184, -0.082277685, -0.012474949, -0.2241205) * input_3(1.0, 0.0);
    result += mat4(0.02468066, -0.006447691, 0.016926493, -0.009651093, 0.11219683, 0.05423491, 0.10148892, -0.11932615, -0.09721083, 0.013830864, 0.3051864, 0.35562685, -0.021985088, -0.00290836, 0.027395276, 0.06476325) * input_3(1.0, 1.0);
    result += vec4(0.10140252, -0.022752475, 0.059863698, -0.09990853);
    return max(result, vec4(0.0));
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-5)
//!HOOK NATIVE
//!BIND conv2d_4_tf
//!BIND conv2d_4_tf1
//!BIND conv2d_4_tf2
//!BIND conv2d_4_tf3
//!SAVE conv2d_5_tf
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (conv2d_4_tf_texOff(vec2(x_off, y_off)))
#define input_1(x_off, y_off) (conv2d_4_tf1_texOff(vec2(x_off, y_off)))
#define input_2(x_off, y_off) (conv2d_4_tf2_texOff(vec2(x_off, y_off)))
#define input_3(x_off, y_off) (conv2d_4_tf3_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(-0.016302032, -0.032940734, -0.006164157, -0.051724903, 0.023695119, 0.0006262372, -0.04650179, 0.040647462, 0.045500673, 0.13808323, -0.022371277, -0.05018903, -0.0013602799, -0.04536232, 0.0142859975, 0.09590521) * input_0(-1.0, -1.0);
    result += mat4(0.04595738, -0.07841319, -0.0015547127, 0.013263065, 0.05399161, -0.058325086, -0.011368906, 0.09256956, -0.031519193, -0.0090528, 0.03241964, 0.112230405, 0.038331926, -0.2254672, 0.109301776, -0.05413845) * input_0(-1.0, 0.0);
    result += mat4(0.08903869, -0.018807119, 0.0494923, 0.04693697, 0.06902712, 0.09503544, -0.09267703, 0.00038292437, 0.0006529571, 0.031947646, -0.05339801, 0.011386495, -0.106686875, -0.044318464, -0.063414544, 0.14124852) * input_0(-1.0, 1.0);
    result += mat4(-0.0059115076, 0.088869356, 0.046922572, -0.03434065, -0.08803006, 0.1265325, -0.053902116, 0.031450517, -0.09375421, -0.011755769, 0.08663509, 0.12803185, -0.101318896, 0.20903654, -0.123224966, 0.06119866) * input_0(0.0, -1.0);
    result += mat4(0.30053535, 0.072950765, 0.14091556, 0.04192138, 0.09610784, 0.18585753, 0.036498714, -0.06303534, 0.08973819, 0.6820555, 0.22512352, -0.01279237, 0.0131923, 0.088654816, 0.2449599, -0.15113766) * input_0(0.0, 0.0);
    result += mat4(0.091711335, 0.26502442, 0.0066890297, 0.030361407, -0.09627301, 0.20384838, -0.020874234, 0.023481179, 0.19629036, -0.26564363, 0.23631617, 0.049796537, -0.16203591, 0.0009561304, 0.008035463, 0.053026672) * input_0(0.0, 1.0);
    result += mat4(-0.05836812, 0.08275274, -0.086877264, -0.004299846, 0.18127841, 0.043677848, 0.082625054, 0.10673131, -0.026305705, 0.00041246286, -0.017349891, 0.0012835038, 0.026818877, 0.13147987, -0.01733456, 0.039727997) * input_0(1.0, -1.0);
    result += mat4(0.05803723, 0.09489951, 0.12456276, 0.1779172, 0.21609828, -0.045481868, -0.029707786, 0.06547231, -0.27234587, 0.15076733, 0.06884082, -0.1349002, -0.08817686, 0.1356235, -0.083627716, 0.009319046) * input_0(1.0, 0.0);
    result += mat4(-0.11298354, 0.09810632, -0.05142041, 0.078311846, -0.04112727, 0.15083061, 0.0012095249, 0.025974836, 0.088739365, -0.17920952, -0.0887954, -0.09883338, 0.105493166, -0.09113235, 0.114163555, 0.024363339) * input_0(1.0, 1.0);
    result += mat4(0.048135035, 0.02268205, 0.0020981373, 0.046117503, -0.005543317, -0.10263975, 0.019576084, 0.060540434, -0.053989515, 0.04534872, 0.006944263, -0.044546753, -0.025259411, -0.11749828, -0.020486318, 0.04302999) * input_1(-1.0, -1.0);
    result += mat4(-0.00066284917, 0.07351618, -0.06815787, 0.058529776, 0.03580122, -0.092641644, -0.041594148, 0.021465786, -0.010106146, -0.1412178, 0.14415199, -0.110078335, 0.018754702, 0.0442201, -0.18238762, 0.0009071246) * input_1(-1.0, 0.0);
    result += mat4(0.074268065, -0.10729021, 0.20764151, -0.012446396, 0.008756622, -0.04913603, -0.18118304, 0.07806361, -0.10619273, 0.22895035, -0.14308734, -0.09809006, 0.002236478, 0.11542389, -0.007924045, 0.022929765) * input_1(-1.0, 1.0);
    result += mat4(-0.045731533, -0.11995296, 0.113253064, -0.009304168, -0.12624857, 0.10138976, 0.032938283, 0.041768048, -0.0072958195, -0.10506904, -0.09938442, 0.05255553, -0.050930165, 0.096290685, -0.06390925, -0.0051820553) * input_1(0.0, -1.0);
    result += mat4(-0.15814424, 0.11986195, -0.044658367, -0.06204657, 0.24903126, -0.07118063, -0.07856345, -0.1696421, 0.17053114, 0.10760683, 0.17417637, -0.0057261134, -0.088891625, 0.21990415, -0.05073197, 0.031094465) * input_1(0.0, 0.0);
    result += mat4(-0.024196202, -0.005048217, -0.34257567, -0.07856212, -0.052657843, -0.194935, -0.14775003, -0.033478394, -0.21364932, 0.034969706, 0.0930356, -0.059209075, -1.091651e-06, 0.056544606, 0.1743169, 0.09952153) * input_1(0.0, 1.0);
    result += mat4(0.24099198, -0.14549904, 0.19139338, 0.015843354, 0.100083396, -0.11943979, 0.12208813, -0.056781437, -0.06068439, 0.03528593, 0.096918404, 0.01451439, -0.06745917, -0.01585268, -0.051843848, 0.008498806) * input_1(1.0, -1.0);
    result += mat4(-0.2591687, 0.11939485, 0.12541415, 0.016640626, -0.17356624, 0.05014976, 0.016473299, -0.13593638, 0.28470114, 0.04895674, -0.11928689, 0.20574968, -0.057937253, -0.030861689, 0.019529393, -0.06842356) * input_1(1.0, 0.0);
    result += mat4(0.017218186, -0.023692023, -0.14890793, 0.06556411, -0.05859293, 0.024586469, 0.034824453, 0.0033056408, 0.025318347, 0.1438421, 0.16021381, -0.019351814, -0.08076935, 0.02183934, -0.19456519, 0.088943906) * input_1(1.0, 1.0);
    result += mat4(0.0105631985, 0.04350638, 0.059824444, -0.0754276, 0.033414796, 0.016148875, -0.020500485, 0.03279433, -0.019172318, 0.016801363, -0.09030225, -0.015958443, -0.11670829, 0.09674022, -0.023091579, 0.03776961) * input_2(-1.0, -1.0);
    result += mat4(-0.021021646, 0.13954452, 0.14749369, -0.13249452, 0.0759095, 0.0024782787, 0.0064211353, 0.1332107, -0.0036374398, 0.10843151, 0.018638344, -0.0043220283, -0.27701053, 0.07708951, 0.1198444, 0.3971122) * input_2(-1.0, 0.0);
    result += mat4(0.004160254, -0.118096754, 0.028023783, -0.012255131, -0.10817068, 0.01803685, 0.07318375, -0.022691667, 0.105654284, -0.09553504, -0.06399535, 0.053104512, -0.33479765, 0.66144526, -0.21111313, -0.48264247) * input_2(-1.0, 1.0);
    result += mat4(0.10938223, 0.021571282, 0.010115444, -0.05948752, 0.014151047, -0.16187581, -0.04901962, -0.07455036, 0.037410993, 0.13113552, 0.0054289107, -0.0059404527, -0.040953044, 0.057158213, -0.008563824, -0.0984731) * input_2(0.0, -1.0);
    result += mat4(0.40313205, -0.16750501, -0.26701266, -0.118972614, -0.74594164, 0.6817906, -0.2232911, -0.104427725, 0.22472365, 0.015364707, 0.15761398, -0.020013465, -0.20477368, -0.04215455, -0.064313546, -0.08255034) * input_2(0.0, 0.0);
    result += mat4(0.061780293, 0.112837955, 0.056621, -0.012559778, 0.52648574, -0.3887503, 0.47602382, 0.49221802, -0.12774615, 0.06891211, -0.20593773, 0.012258173, -0.01596565, -0.06462517, 0.40970245, 0.39519557) * input_2(0.0, 1.0);
    result += mat4(-0.019798346, -0.07241436, -0.06340755, 0.053610038, 0.08526449, 0.012424763, 0.1139972, -0.050214455, -0.15566976, 0.04695059, -0.22435655, -0.0047492306, 0.08406538, -0.05574466, 0.021036718, 0.012682924) * input_2(1.0, -1.0);
    result += mat4(-0.040308937, -0.11915481, -0.04562237, -0.047672667, 0.15446755, 0.021772647, -0.15574652, 0.3304811, -0.18189748, -0.11728335, 0.17074102, -0.11549964, 0.1432879, -0.049111035, -0.008702328, 0.108624764) * input_2(1.0, 0.0);
    result += mat4(-0.17073157, 0.17772506, -0.14436713, 0.010385283, 0.0661059, -0.09133642, 0.0776064, -0.0573278, 0.048295204, -0.062054943, -0.20064479, -0.04186689, 0.07196897, 0.182251, 0.031757485, -0.20548764) * input_2(1.0, 1.0);
    result += mat4(-0.04107523, 0.021376723, 0.017744696, -0.030208483, 0.037014797, -0.12029282, 0.044739597, 0.036619015, -0.023903932, 0.0099027725, -0.049089413, 0.08976562, 0.044855163, -0.061861105, -0.028612655, 0.031914443) * input_3(-1.0, -1.0);
    result += mat4(0.006476187, 0.026408734, -0.04584966, 0.0020536468, 0.048311196, -0.1822397, -0.069004536, 0.057450183, -0.096760795, -0.039436687, -0.071356125, 0.10714537, 0.16926928, -0.25097486, -0.0832357, -0.085622326) * input_3(-1.0, 0.0);
    result += mat4(0.07464256, 0.018822944, -0.04415851, 0.013360013, -0.034267098, 0.08830381, 0.057853516, -0.093338914, -0.049353026, 0.039196495, 0.10240034, -0.046651933, 0.010494221, 0.007018029, -0.055531703, 0.09628867) * input_3(-1.0, 1.0);
    result += mat4(0.08878306, 0.09915751, 0.0472195, -0.11278448, 0.064580284, 0.09569222, 0.03054747, 0.003350269, -0.13338906, -0.4784241, -0.01887877, 0.0034259623, 0.26933512, -0.15236989, 0.16002224, -0.16758257) * input_3(0.0, -1.0);
    result += mat4(0.028855521, 0.33944753, 0.46311262, -0.08942905, -0.17788978, -0.24973896, -0.0719499, -0.03788213, -0.5551508, -0.359227, -0.051307935, -0.27541962, 0.22672394, 0.14624692, -0.29643437, 0.37940395) * input_3(0.0, 0.0);
    result += mat4(0.33334145, -0.07949096, -0.2165231, -0.11461447, 0.059512485, -0.12767561, -0.35717, -0.10979977, 0.06011219, -0.026831884, 0.10838789, -0.083840825, 0.021395925, 0.030278655, 0.21599391, 0.1465409) * input_3(0.0, 1.0);
    result += mat4(0.097324826, -0.15313601, -0.02768647, -0.03237632, -0.05684252, 0.112538114, -0.11169485, -0.003977074, -0.07000811, -0.045902587, 0.21308699, 0.047337644, 0.09470106, -0.025979906, -0.15831372, -0.09307261) * input_3(1.0, -1.0);
    result += mat4(0.00931613, -0.038072642, 0.14725928, 0.24328187, -0.11207545, -0.1710769, -0.12694168, -0.11048021, 0.18883805, -0.056677513, -0.044592716, -0.1371853, -0.06573711, -0.15048042, 0.092646904, -0.050232608) * input_3(1.0, 0.0);
    result += mat4(0.11818455, -0.23321706, 0.051980674, 0.36092436, -0.07229324, 0.087718554, -0.22135209, 0.117094696, -0.033848565, 0.10357738, -0.054537296, 0.07359599, 0.0030784607, -0.13588473, 0.0996846, -0.02357628) * input_3(1.0, 1.0);
    result += vec4(-0.0016486424, -0.013515077, 0.0025365162, 0.03780723);
    return result;
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-5)
//!HOOK NATIVE
//!BIND conv2d_4_tf
//!BIND conv2d_4_tf1
//!BIND conv2d_4_tf2
//!BIND conv2d_4_tf3
//!SAVE conv2d_5_tf1
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (conv2d_4_tf_texOff(vec2(x_off, y_off)))
#define input_1(x_off, y_off) (conv2d_4_tf1_texOff(vec2(x_off, y_off)))
#define input_2(x_off, y_off) (conv2d_4_tf2_texOff(vec2(x_off, y_off)))
#define input_3(x_off, y_off) (conv2d_4_tf3_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(-0.0031438954, -0.021210492, -0.011667282, -0.06429453, -0.100865655, -0.01674215, -0.058955897, -0.1186755, 0.014979931, 0.09031205, 0.10131019, -0.13931464, -0.050922263, -0.07106172, -0.11073578, -0.1771845) * input_0(-1.0, -1.0);
    result += mat4(-0.02630175, -0.049548235, 0.04577681, 0.1918201, 0.060013182, -0.08278615, 0.054575615, -0.04065338, -0.0006296451, -0.16839615, -0.19149576, -0.026886297, 0.07503694, -0.18063956, 0.097872086, -0.14560762) * input_0(-1.0, 0.0);
    result += mat4(-0.013352345, 0.06850606, -0.087561585, -0.029788924, -0.109062225, 0.13261153, 0.0395211, 0.05370802, -0.049439486, -0.040773034, -0.02717558, 0.07231055, -0.13406591, -0.07366804, -0.084632695, -0.23296076) * input_0(-1.0, 1.0);
    result += mat4(0.12310046, -0.028218867, -0.0049156537, 0.05173848, 0.004786855, -0.1308049, 0.044018902, -0.10156978, 0.16295524, -0.17299141, -0.11263884, 0.063742615, 0.07583025, 0.0044336496, 0.105274335, 0.013008411) * input_0(0.0, -1.0);
    result += mat4(-0.2427295, 0.20718038, 0.1014938, 0.18281326, 0.15709965, 0.1397587, 0.055849977, 0.008699439, -0.15578884, 0.34332967, 0.15389776, 0.07984391, -0.11693247, 0.08854952, 0.10351604, 0.18115945) * input_0(0.0, 0.0);
    result += mat4(0.2794059, 0.07882154, -0.13775663, 0.14088477, -0.0035093694, -0.06966442, -0.070966385, 0.03817071, 0.24084674, -0.034659423, 0.08090443, 0.13699313, -0.071451925, 0.18105276, -0.11121908, 0.09893843) * input_0(0.0, 1.0);
    result += mat4(0.0036532523, 0.06315487, 0.011292378, -0.017129233, -0.06310727, -0.0665509, -0.05742598, 0.08899358, -0.09040959, -0.018439794, 0.0637931, -0.060581416, 0.07321408, -0.10315336, 0.00915549, 0.09357592) * input_0(1.0, -1.0);
    result += mat4(-0.19807515, -0.09541633, 0.009520788, -0.003588311, 0.108990245, 0.16760404, 0.116668664, 0.13943942, -0.076912895, -0.006036387, 0.09493324, -0.074754514, -0.03815684, 0.052336074, -0.07238792, 0.12685733) * input_0(1.0, 0.0);
    result += mat4(-0.14686573, -0.6727598, -0.13635215, 0.10356599, -0.09585396, 0.04968895, -0.028225733, 0.08260999, 0.004046724, -0.023547105, 0.04954336, 0.051790435, 0.009227762, -0.021283463, -0.00513782, -0.04577742) * input_0(1.0, 1.0);
    result += mat4(-0.015156008, -0.07020558, -0.06946854, -0.002294337, 0.017171845, -0.058366086, -0.08624192, -0.0905322, -0.08242243, 0.035709497, -0.050474603, 0.06828703, 0.02456345, -0.012740039, -0.044494715, -0.049610756) * input_1(-1.0, -1.0);
    result += mat4(-0.06015737, 0.14875989, 0.055248126, 0.010546777, -0.021473346, -0.06301292, -0.033941537, 0.06085788, -0.10227162, -0.03660739, -0.048234794, 0.1962055, -0.035294987, 0.010509088, 0.12240376, -0.025106583) * input_1(-1.0, 0.0);
    result += mat4(-0.008650274, 0.09702532, -0.09880027, 0.06354497, 0.06735159, -0.047665752, 0.055763386, -0.07369151, -0.12017732, -0.10316258, 0.1957272, 0.0050342632, -0.053482026, 0.02949866, 0.0128559, 0.030099822) * input_1(-1.0, 1.0);
    result += mat4(0.0785035, -0.15212007, -0.09068153, 0.010777378, 0.110456035, 0.07307602, -0.024059404, 0.1349936, -0.043377567, 0.099265754, -0.025295828, -0.2683652, 0.069322385, 0.18671128, 0.09015816, 0.06017405) * input_1(0.0, -1.0);
    result += mat4(0.00206483, 0.10118609, 0.12383006, 0.05562688, 0.10377825, 0.26688677, 0.049733266, 0.20411003, 0.39066812, 0.0025017872, -0.110562086, -0.070729606, 0.2121692, -0.03128987, -0.04748922, -0.05637303) * input_1(0.0, 0.0);
    result += mat4(0.038411144, 0.037506495, 0.015819538, 0.061806697, -0.09059228, 0.06823781, 0.035574634, -0.07014484, -0.10469687, -0.014910234, 0.057929054, 0.007557732, -0.046648353, -0.13811058, 0.024564771, -0.002163201) * input_1(0.0, 1.0);
    result += mat4(-0.16430394, -0.058801286, -0.017729418, -0.053738534, -0.17372583, 0.06582177, -0.0037930533, -0.05450242, -0.062178213, 0.09954951, 0.013684618, -0.01673311, 0.019684391, -0.10735184, 0.016598294, 0.004938599) * input_1(1.0, -1.0);
    result += mat4(0.07784832, -0.051561143, 0.07057173, -0.02804085, 0.012810759, 0.029337743, 0.04577699, -0.03177658, -0.07354304, 0.037577014, 0.024077417, -0.17394945, 0.102541216, 0.13104095, 0.008347494, 0.0423567) * input_1(1.0, 0.0);
    result += mat4(0.1122007, -0.10422815, -0.06524245, -0.0014375271, -0.06438041, -0.007763075, 0.040706385, 0.010162961, -0.075803585, -0.034281727, -0.02761116, -0.07693921, 0.064694986, -0.07713782, -0.037317023, -0.16959143) * input_1(1.0, 1.0);
    result += mat4(-0.04434786, 0.009544083, 0.10925156, 0.06679712, 0.054136932, 0.00015286771, 0.015370586, 0.030872338, -0.046430595, 0.10647227, 0.043510776, -0.04522765, 0.010382002, 0.0067856614, 0.0076440047, -0.01664802) * input_2(-1.0, -1.0);
    result += mat4(-0.026386853, 0.03895704, -0.070775874, 0.07133456, 0.076690756, 0.027716303, -0.072477795, -0.0021439216, -0.112855144, 0.115081646, 0.027773652, -0.07040676, 0.35142815, -0.26958728, 0.1326222, 0.1602389) * input_2(-1.0, 0.0);
    result += mat4(-0.016949773, 0.120039925, 0.0077348053, 0.04100941, 0.017766878, -0.03817618, -0.035365604, 0.10376727, 0.029281052, -0.056312475, -0.005928221, -0.025219465, -0.10767637, -0.31100947, 0.03463579, -0.46394914) * input_2(-1.0, 1.0);
    result += mat4(-0.089046195, -0.10653452, -0.019699834, -0.07702369, -0.13150837, 0.043229252, -0.0929312, -0.05123071, 0.06712565, -0.054274384, 0.13414557, 0.11045442, -0.12106722, 0.07634373, 0.07699678, -0.06317769) * input_2(0.0, -1.0);
    result += mat4(0.09946713, -0.12725091, 0.08708317, -0.15887961, -0.20871222, 0.091201484, 0.24527448, 0.080185674, -0.058102038, -0.11132768, 0.027865393, 0.03605836, -0.2871964, 0.1387363, 0.04270319, -0.036107305) * input_2(0.0, 0.0);
    result += mat4(-0.044517215, 0.15247244, -0.15467584, 0.046877455, 0.17972659, 0.22084227, 0.030436903, -0.40904874, 0.069039874, -0.1270709, -0.051708955, 0.0067209797, -0.09534035, 0.061554886, 0.205349, -0.11302649) * input_2(0.0, 1.0);
    result += mat4(0.17655295, -0.06625569, -0.06577431, -0.0016107704, -0.049095944, 0.022404412, 0.035786897, 0.03911874, 0.12140029, -0.07530154, 0.03699979, 0.050948583, 0.050849468, -0.031943534, -0.056496993, 0.054177895) * input_2(1.0, -1.0);
    result += mat4(-0.043840908, -0.11420414, -0.019530876, -0.0896248, 0.23496795, -0.028507857, -0.16455722, 0.17696889, -0.08768207, -0.08934079, -0.07736445, -0.05356132, 0.111364014, -0.038674146, -0.10665931, 0.08303937) * input_2(1.0, 0.0);
    result += mat4(-0.007766514, -0.08339899, -0.06737732, -0.04202131, -0.07131213, 0.07262141, 0.036761023, 0.21950205, 0.11610381, -0.0038327402, 0.031440817, -0.013746285, 0.018131388, -0.034475118, 0.013058048, 0.023590812) * input_2(1.0, 1.0);
    result += mat4(-0.029678047, -0.014580943, 0.018181596, 0.091085546, 0.07387681, -0.009970537, -0.10393874, -0.0072672903, -0.016823081, 0.049150273, -0.1426548, -0.22983773, -0.036883794, -0.12130923, -0.028555604, 0.072352245) * input_3(-1.0, -1.0);
    result += mat4(0.03870376, -0.027741166, 0.031109901, 0.1256755, 0.086769246, 0.0892012, 0.1520954, 0.09619299, 0.054409713, -0.17240182, 0.084474385, 0.06333706, 0.102069765, 0.15162793, 0.019540614, -0.2332146) * input_3(-1.0, 0.0);
    result += mat4(0.06609652, 0.048497044, -0.07950833, -0.24019575, 0.0716664, 0.07650747, -0.0313347, 0.004624834, 0.039805766, -0.06200194, -0.04036429, -0.100194395, 0.08689376, -0.013541268, 0.02606719, -0.03128495) * input_3(-1.0, 1.0);
    result += mat4(0.05968853, -0.025202066, 0.074773245, 0.07382303, 0.06623271, 0.17622158, 0.18657114, 0.2807903, 0.08387062, -0.0940432, -0.11185384, -0.12588528, -0.20768932, 0.17212236, -0.04717515, 0.16703716) * input_3(0.0, -1.0);
    result += mat4(-0.22304484, -0.02580257, 0.13802603, 0.5054816, -0.15414754, 0.3206931, -0.04250342, 0.067846626, -0.085691184, -0.45981416, 0.25307626, 0.0085979095, -0.06218275, -0.1101677, -0.21862389, 0.14969718) * input_3(0.0, 0.0);
    result += mat4(0.14174291, -0.10664284, -0.09976682, 0.17454587, 0.039000914, -0.082512975, -0.031142434, -0.04253393, -0.09869351, -0.061551966, -0.010643535, 0.03210123, -0.081062086, 0.0981939, -0.047406625, -0.13408165) * input_3(0.0, 1.0);
    result += mat4(-0.026019314, -0.04661407, -0.16241813, -0.042997625, -0.070090756, -0.015681487, 0.026736023, -0.079528846, 0.08751133, 0.033334736, -0.042529665, -0.052058842, 0.11344305, -0.021564543, -0.0074010026, 0.18268162) * input_3(1.0, -1.0);
    result += mat4(0.014877638, -0.5642224, -0.117966965, -0.30288294, 0.006736561, 0.006280706, -0.0805918, 0.096047916, 0.052114207, 0.17604923, 0.03418994, 0.11829391, 0.027615897, 0.0801362, -0.0138847865, 0.09889157) * input_3(1.0, 0.0);
    result += mat4(0.06804047, -0.1598833, -0.13515392, -0.14733674, -0.024831582, -0.095799, 0.015308739, -0.13260107, 0.0028367674, 0.055914428, 0.02686288, -0.05759676, 0.041127272, 0.03906196, -0.0110902395, 0.09498123) * input_3(1.0, 1.0);
    result += vec4(-0.018132554, 0.0023312853, -0.017371483, 0.007855469);
    return result;
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-5)
//!HOOK NATIVE
//!BIND conv2d_4_tf
//!BIND conv2d_4_tf1
//!BIND conv2d_4_tf2
//!BIND conv2d_4_tf3
//!SAVE conv2d_5_tf2
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (conv2d_4_tf_texOff(vec2(x_off, y_off)))
#define input_1(x_off, y_off) (conv2d_4_tf1_texOff(vec2(x_off, y_off)))
#define input_2(x_off, y_off) (conv2d_4_tf2_texOff(vec2(x_off, y_off)))
#define input_3(x_off, y_off) (conv2d_4_tf3_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(0.0002088397, 0.025447782, 0.025708359, 0.008813866, -0.03721204, 0.076975115, 0.01923037, 0.04763256, 0.0033144595, 0.14489482, 0.12849255, -0.13516979, 0.004539311, 0.00046774605, 0.09551554, -0.049741793) * input_0(-1.0, -1.0);
    result += mat4(0.107223965, -0.038360883, -0.084685266, -0.04160232, 0.080185555, -0.044883363, 0.086070314, -0.09008069, -0.034951486, 0.05613553, 0.13725811, -0.10592703, 0.25337574, -0.14691766, 0.021451078, -0.04404532) * input_0(-1.0, 0.0);
    result += mat4(-0.11762893, 0.03878968, 0.029915353, -0.0029592798, -0.062861025, 0.15536502, 0.07300601, -0.055557657, -0.07957276, 0.112135164, -0.008285616, -0.024567768, 0.047836326, 0.085037716, 0.116234496, -0.013691754) * input_0(-1.0, 1.0);
    result += mat4(-0.049407907, -0.009571376, 0.08006995, -0.011633614, 0.05374803, 0.031763855, 0.08372252, 0.10226281, 0.09430905, -0.16263758, -0.07980429, 0.1610981, -0.039713115, 0.017844308, 0.028180838, 0.111897565) * input_0(0.0, -1.0);
    result += mat4(-0.34879532, 0.014671246, 0.08535066, 0.02981539, -0.13539639, -0.04794963, -0.1613737, 0.0015318001, -0.08376704, 0.24876931, -0.09321083, 0.21501361, 0.10423241, -0.055684313, -0.11123515, -0.11786792) * input_0(0.0, 0.0);
    result += mat4(-0.041958015, -0.3257909, 0.07356549, 0.0055784783, 0.17245898, -0.07008809, -0.14440617, 0.04392778, 0.050134514, -0.1891987, -0.17398931, 0.08680273, 0.007089374, 0.056322325, 0.17017819, -0.2560753) * input_0(0.0, 1.0);
    result += mat4(-0.032558415, 0.03940082, 0.011438762, -0.059227116, 0.13094677, 0.056127448, -0.00095615815, -0.1469317, -0.0397077, -0.019727398, 0.06305014, -0.04622713, 0.02183542, -0.08712138, -0.02118918, 0.017894452) * input_0(1.0, -1.0);
    result += mat4(0.0471972, 0.09924128, -0.09817639, 0.1716519, 0.13942944, 0.055049296, -0.13914661, 0.042025372, -0.13421729, 0.05295823, 0.013816664, 0.019459542, 0.019905567, 0.06958122, -0.028752768, 0.13468991) * input_0(1.0, 0.0);
    result += mat4(-0.69575316, 0.12189786, 0.050499234, 0.21680245, -0.012704001, -0.117921665, 0.12355938, -0.037688226, -0.10752849, -0.013196276, 0.03500693, -0.049137037, -0.103421256, 0.025204927, -0.00511631, -0.022248108) * input_0(1.0, 1.0);
    result += mat4(-0.018842978, -0.045445476, -0.10098644, -0.012950071, 0.021974305, 0.005123167, -0.0061890576, 0.012917947, -0.07458315, 0.0083352765, 0.06721163, -0.026989441, 0.02682879, -0.01584972, -0.0626293, -0.023574967) * input_1(-1.0, -1.0);
    result += mat4(-0.04147004, 0.05718762, -0.06513055, -0.017152634, 0.0066243303, 0.069073625, -0.08657642, 0.032617886, -0.27565938, -0.057438098, -0.14637345, 0.12484761, 0.037274558, 0.06590172, -0.058330406, 0.07290853) * input_1(-1.0, 0.0);
    result += mat4(-0.037602555, 0.008334897, -0.03319309, -0.08042931, 0.17239797, 0.0047975844, -0.07172938, -0.015512824, -0.055578597, 0.012182474, 0.0053728004, 0.20771988, -0.034816828, 0.046122346, 0.019668054, -0.05437425) * input_1(-1.0, 1.0);
    result += mat4(-0.155039, 0.013681478, 0.13159335, 0.0315359, -0.14388111, 0.020989211, -0.02258393, 0.026568068, -0.14832793, 0.18784055, 0.35550818, -0.22937551, -0.13351183, -0.089170255, -0.11134417, 0.07890695) * input_1(0.0, -1.0);
    result += mat4(0.03642069, 0.156659, -0.105426215, 0.12030506, 0.05300872, 0.03311296, -0.0818684, 0.13908796, 0.2976616, -0.26099864, -0.055550706, -0.083622515, 0.21327886, -0.11481161, -0.08010101, -0.035160758) * input_1(0.0, 0.0);
    result += mat4(0.006301374, -0.049469296, 0.09645844, -0.09235175, 0.18446828, -0.014833815, 0.02348145, 0.005804965, 0.13853166, 0.072139524, 0.09589136, 0.086930856, 0.05549332, -0.104816765, -0.06547674, -0.037527982) * input_1(0.0, 1.0);
    result += mat4(0.24433246, 0.048712377, -0.050884314, -0.030887922, 0.060560893, 0.1146741, 0.029072963, -0.14080489, -0.045014933, 0.100774415, 0.10557737, -0.14341171, -0.0819902, -0.051893923, 0.08480563, 0.03906254) * input_1(1.0, -1.0);
    result += mat4(-0.011167609, 0.1037883, 0.06978047, 0.16925326, -0.22813538, 0.08362927, 0.10417727, -0.113489516, 0.1602099, -0.1986264, -0.042249296, -0.25260627, -0.17938441, -0.1582002, 0.096902564, -0.30386502) * input_1(1.0, 0.0);
    result += mat4(-0.03159963, -0.0544357, -0.007951385, -0.014606963, 0.1723721, -0.09780395, -0.11137433, -0.01951673, 0.020595197, 0.015467382, -0.056800846, 0.04647836, 0.06368079, -0.030715577, 0.14049694, 0.052503023) * input_1(1.0, 1.0);
    result += mat4(-0.017029744, -0.13259554, -0.019350085, 0.051364254, 0.014359753, 0.017977105, -0.040600386, 0.016191548, 0.03486342, 0.08211756, 0.011632943, -0.0019391597, -0.12184083, 0.043949842, 0.16338445, -0.023682056) * input_2(-1.0, -1.0);
    result += mat4(-0.09060947, -0.16445133, -0.0014897337, -0.056186445, 0.05155102, -0.011379329, -0.04525244, -0.0033773049, -0.038079977, 0.0815389, 0.09533836, -0.106878325, 0.037123185, 0.09881683, 0.120942846, 0.11212) * input_2(-1.0, 0.0);
    result += mat4(-0.010911066, 0.003284888, 0.03214805, 0.0035584175, 0.08793841, 0.013621777, -0.053673804, -0.15713422, 0.03400371, -0.065150544, -0.04422245, 0.02402445, -0.23785321, 0.14857827, 0.20221537, 0.30931038) * input_2(-1.0, 1.0);
    result += mat4(0.10711357, -0.0039249896, -0.008320231, -0.006169383, -0.02498133, -0.038223803, 0.014857633, -0.026714595, 0.059809275, -0.16998981, -0.0090133725, 0.119614415, -0.035633966, -0.017171051, 0.08627822, -0.07419175) * input_2(0.0, -1.0);
    result += mat4(0.16128373, 0.1759152, 0.17336562, -0.0029664002, 0.1456458, -0.063380346, -0.04426776, -0.06308512, -0.113805525, -0.14817129, -0.05056116, 0.0521608, 0.22712621, -0.06884127, -0.31687003, -0.22735184) * input_2(0.0, 0.0);
    result += mat4(-0.092957206, 0.12632969, -0.05518018, 0.069501795, -0.2564054, -0.23954698, -0.12380841, -0.16412725, 0.031260356, 0.027569933, -0.014872604, 0.033582132, -0.12790218, -0.2066777, 0.44852585, -0.10744753) * input_2(0.0, 1.0);
    result += mat4(0.06771683, -0.06451387, -0.16586709, 0.21041751, -0.023553375, 0.032911424, 0.07735111, -0.1735432, -0.12223883, -0.11173806, -0.08691983, 0.22131467, 0.055643678, -0.08362584, -0.05726459, 0.04030074) * input_2(1.0, -1.0);
    result += mat4(-0.19528621, -0.013813048, 0.12464423, -0.03724924, 0.4069401, -0.13819708, -0.5667559, 0.31818402, -0.123768024, -0.034091752, 0.221325, -0.018174386, 0.17008077, -0.06846722, -0.09548601, 0.025133375) * input_2(1.0, 0.0);
    result += mat4(0.023621233, 0.055967648, 0.11473297, 0.040089153, -0.15184662, 0.041604917, 0.05597727, -0.19354755, -0.01574169, -0.013808012, 0.0021984796, 0.051241226, 0.027156563, 0.070012115, -0.07563941, 0.109417476) * input_2(1.0, 1.0);
    result += mat4(0.01641992, -0.032374676, -0.052633982, 0.013558786, 0.031082297, -0.06114293, -0.05035357, 0.033577062, -0.006254194, 0.15718412, 0.14476144, -0.14764696, 0.18192425, -0.05634139, -0.074392356, 0.116676256) * input_3(-1.0, -1.0);
    result += mat4(0.083063945, 0.12693205, 0.041251685, -0.02766083, 0.1382745, -0.046861872, -0.052841842, 0.109219246, 0.08805933, 0.04795674, -0.12693755, 0.088355385, 0.09756398, 0.14900398, 0.15786624, -0.11470178) * input_3(-1.0, 0.0);
    result += mat4(0.09010625, -0.037127867, 0.05817454, -0.15982988, 0.015521105, -0.09683009, -0.03098596, -0.022475008, 0.028733833, -0.010671508, 0.021988291, 0.009779596, 0.04377492, -0.07974625, -0.022146178, 0.05168308) * input_3(-1.0, 1.0);
    result += mat4(0.060830824, -0.029005373, 0.005783759, -0.07192599, -0.05829763, -0.020887692, -0.24640931, -0.013343188, -0.1999551, 0.09936579, 0.16711849, 0.06639392, 0.042211883, -0.19882655, -0.3703302, -0.06738274) * input_3(0.0, -1.0);
    result += mat4(-0.19146395, 0.19391614, -0.2351474, 0.25868538, -0.32919222, 0.16247068, -0.010762744, 0.06807634, -0.0048230016, -0.10919523, -0.05984586, 0.4865654, 0.2748996, 0.04876408, -0.25722364, -0.059783317) * input_3(0.0, 0.0);
    result += mat4(0.11696443, -0.12989442, -0.0018829182, -0.20031802, 0.07288317, -0.24960811, 0.22359431, -0.31694293, -0.04638902, 0.06334756, -0.025550347, 0.022530265, -0.07135115, 0.16078652, -0.0036363648, -0.111560345) * input_3(0.0, 1.0);
    result += mat4(0.054548528, -0.1072535, -0.056461602, 0.08052524, 0.04416743, 0.04045787, -0.07440061, 0.13354781, -0.0307563, 0.118211746, 0.119071394, 0.123153105, -0.004294486, -0.061299533, -0.13111445, 0.11841444) * input_3(1.0, -1.0);
    result += mat4(0.12846899, 0.14756083, 0.32710934, 0.0024770198, -0.279436, -0.05623543, 0.21469466, -0.30365816, 0.15782757, -0.11848268, -0.1795621, -0.08153721, -0.051831655, 0.12856661, 0.061913893, 0.12169072) * input_3(1.0, 0.0);
    result += mat4(0.11550144, -0.11069629, -0.2978772, 0.07541246, -0.06715849, -0.0932647, 0.08695976, -0.09951965, 1.271088e-05, -0.020686213, 0.0894334, -0.083381936, 0.112128876, 0.06376029, -0.13989514, 0.12746789) * input_3(1.0, 1.0);
    result += vec4(-0.0012603963, 0.012673187, 0.013756762, -0.002403912);
    return result;
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Conv-5)
//!HOOK NATIVE
//!BIND conv2d_4_tf
//!BIND conv2d_4_tf1
//!BIND conv2d_4_tf2
//!BIND conv2d_4_tf3
//!SAVE conv2d_5_tf3
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) (conv2d_4_tf_texOff(vec2(x_off, y_off)))
#define input_1(x_off, y_off) (conv2d_4_tf1_texOff(vec2(x_off, y_off)))
#define input_2(x_off, y_off) (conv2d_4_tf2_texOff(vec2(x_off, y_off)))
#define input_3(x_off, y_off) (conv2d_4_tf3_texOff(vec2(x_off, y_off)))
vec4 hook() {
    vec4 result = mat4(0.029830152, 0.013857779, 0.009782898, 0.02242324, -0.06703945, 0.010642374, -0.01429212, -0.024706025, 0.053857006, 0.004030919, 0.009975912, -0.017060071, -0.016678832, -0.0047765686, 0.046919145, 0.04243461) * input_0(-1.0, -1.0);
    result += mat4(-0.11023581, -0.044695213, -0.02860311, -0.009800533, 0.12239534, -0.092862554, 0.07218882, -0.06624548, 0.03711307, 0.14164002, 0.09358158, 0.038630538, -0.25234646, -0.1694581, 0.03903708, 0.012489544) * input_0(-1.0, 0.0);
    result += mat4(0.025590168, -0.0033687104, 0.06442134, -0.06699245, 0.026461631, 0.12783985, -0.03582817, 0.025248295, 0.04490739, 0.14515601, 0.044007033, -0.037041362, -0.03545314, -0.13649511, 0.0465375, 0.10494521) * input_0(-1.0, 1.0);
    result += mat4(0.15329233, 0.023764312, -0.004960871, 0.06807998, 0.018443419, 0.1118301, -0.05794914, 0.04576946, 0.042507574, -0.13849062, 0.0989839, 0.14564864, 0.11934467, 0.13936552, -0.038692035, -0.023116644) * input_0(0.0, -1.0);
    result += mat4(-0.073767625, -0.07543077, -0.12006243, -0.175474, 0.28700146, 0.024127325, -0.07051709, 0.0017662339, 0.05613977, -0.37055117, -0.09252118, 0.04486188, 0.012177386, -0.09299836, -0.021575855, 0.07161104) * input_0(0.0, 0.0);
    result += mat4(-0.31012836, -0.28572363, 0.2047295, 0.21697967, 0.15909748, 0.16226247, 0.00229946, 0.22771192, 0.02050496, 0.03312901, -0.061904367, -0.21574904, 0.12967817, -0.03872747, 0.09549739, 0.11365628) * input_0(0.0, 1.0);
    result += mat4(-0.022173503, -0.04948868, -0.0077082585, 0.06558091, 0.030626347, -0.0065792105, 0.034695987, -0.0181891, -0.05604574, -0.0029234027, -0.006324936, 0.009937838, -0.003318988, 0.0067809694, -0.06797037, 0.069584176) * input_0(1.0, -1.0);
    result += mat4(-0.06794257, 0.032050025, -0.13426904, -0.1552606, 0.0062456788, -0.16605137, -0.058625653, 0.07699313, -0.054442145, 0.11882946, 6.894031e-05, -0.084064044, 0.0070737144, -0.038356695, 0.012862726, -0.05972619) * input_0(1.0, 0.0);
    result += mat4(0.18761632, 0.20604493, 0.06872918, -0.17501125, -0.017355917, -0.09353211, -0.04363925, 0.14770384, -0.08484977, -0.055031847, -0.050013144, -0.14576307, 0.0074336976, 0.034833346, -0.012766316, -0.14637493) * input_0(1.0, 1.0);
    result += mat4(-0.07369764, 0.04438554, 0.036400996, 0.022965346, -0.0045094765, -0.008844053, 0.068244964, 0.0013649524, 0.14617556, 0.009544129, -0.016254874, 0.039376434, -0.048017304, 0.08371447, 0.025670148, -0.06637148) * input_1(-1.0, -1.0);
    result += mat4(0.1429436, -0.069592826, 0.043128453, -0.021876847, 0.12894721, 0.04777615, -0.11902486, -0.16432174, 0.020250492, 0.32960877, -0.029806789, -0.11383364, 0.005730654, 0.004743028, -0.07027276, -0.060161818) * input_1(-1.0, 0.0);
    result += mat4(0.16083771, 0.012877293, 0.04613375, -0.055360388, -0.114601366, -0.0034949102, 0.014154751, 0.012878483, -0.056790467, 0.08630606, -0.13266973, -0.0054148943, 0.075113855, 0.12409209, -0.044481706, 0.045015592) * input_1(-1.0, 1.0);
    result += mat4(-0.00056048005, -0.01339603, 0.004653892, 0.028423445, 0.063027315, 0.045035075, -0.040142663, 0.014746043, 0.07340445, 0.21951616, 0.1067154, -0.008593392, 0.16031298, 0.0796453, -0.037753846, -0.095668815) * input_1(0.0, -1.0);
    result += mat4(-0.06604359, 0.13234405, -0.06796233, -0.17397574, -0.05200589, -0.13869, -0.026644804, -0.06691729, 0.02582055, 0.030534407, 0.037487835, 0.04831666, -0.010930034, 0.043912526, -0.046005797, 0.063479476) * input_1(0.0, 0.0);
    result += mat4(-0.09393999, -0.09911509, -0.09255096, 0.14940773, -0.0061317864, 0.10830728, -0.011223449, 0.04664245, -0.23067349, -0.094193175, 0.010339669, 0.14578323, -0.0949185, -0.034703966, -0.0016471586, -0.0019600035) * input_1(0.0, 1.0);
    result += mat4(-0.06968612, -0.21358661, -0.06067668, 0.008059318, 0.088210166, -0.08334187, -0.0075200987, -0.032935183, 0.1283966, 0.041159924, 0.0690087, 0.14384325, -0.05358801, 0.1499175, -0.0677379, -0.097883336) * input_1(1.0, -1.0);
    result += mat4(0.035631917, 0.27167603, -0.016275441, 0.13052832, 0.13801399, -0.029357662, 0.054040603, 0.043025475, -0.21396983, -0.31398574, 0.006885449, 0.17329572, -0.019590193, 0.06036336, 0.045297317, 0.039070453) * input_1(1.0, 0.0);
    result += mat4(-0.048644185, 0.05461267, 0.04849292, 0.005341999, 0.021130836, 0.020740867, 0.018617727, 0.044110674, 0.012063981, 0.058465082, -0.033523332, -0.014911242, -0.07278896, -0.11219789, 0.1123332, 0.09807851) * input_1(1.0, 1.0);
    result += mat4(-0.028210761, -0.03167251, -0.009783939, 0.08489546, 0.019270638, -0.01809298, 0.0016378508, -0.07365042, 0.15312174, 0.087407835, -0.0067845294, -0.06784386, 0.09480386, 0.114522934, 0.02161142, 0.014260588) * input_2(-1.0, -1.0);
    result += mat4(0.06753939, -0.12686436, 0.045138765, 0.23429696, 0.03928055, -0.14552788, 0.012842769, 0.025108673, 0.15570836, 0.18393639, 0.040882573, -0.07037772, -0.18791063, 0.33552334, -0.22177997, -0.22167054) * input_2(-1.0, 0.0);
    result += mat4(-0.07260047, -0.087374635, -0.0067151864, -0.09919387, 0.04936, 0.07393361, -0.026542896, 0.0425379, -0.08628485, -0.042238522, 0.048800584, 0.047657114, 0.29997787, 0.41478968, -0.060537394, 0.30326366) * input_2(-1.0, 1.0);
    result += mat4(-0.14347671, -0.07929502, -0.011856074, 0.03977848, 0.11260185, -0.12568514, 0.08724874, 0.049838837, -0.17431824, -0.032461416, -0.17909087, 0.08177031, 0.01861493, -0.077040344, 0.016318819, 0.1093591) * input_2(0.0, -1.0);
    result += mat4(-0.15358645, 0.073412284, 0.051891923, -0.024983373, -0.23703, 0.283229, -0.09253479, 0.20958857, 0.10265786, -0.10455257, 0.02816567, 0.037666716, -0.065639175, -0.21496618, -0.06350243, 0.09539991) * input_2(0.0, 0.0);
    result += mat4(0.058123175, 0.051788047, 0.022700412, 0.0716379, -0.09900637, -0.027295824, 0.13617791, -0.6765677, -0.0004857879, -0.050034918, 0.03524815, 0.07699184, -0.16349714, -0.3334592, 0.19567062, 0.0894619) * input_2(0.0, 1.0);
    result += mat4(-0.13035628, 0.07271628, -0.019523539, -0.13100094, -0.040855896, -0.054736197, -0.04768865, 0.041721005, -0.08334831, 0.13104309, 0.03229945, -0.10633411, 0.023871413, -0.017494159, 0.017174054, -0.010103302) * input_2(1.0, -1.0);
    result += mat4(0.00027189575, 0.105904385, -0.07737859, 0.0031790943, 0.043543074, 0.021609928, 0.10403094, -0.20655604, 0.07556076, 0.11773672, 0.015721373, -0.046990898, 0.07213467, -0.010540908, 0.07138534, -0.036707997) * input_2(1.0, 0.0);
    result += mat4(0.051583838, -0.002372549, 0.0955813, 0.14945774, 0.074721165, -0.031493794, -0.037018467, -0.16072606, -0.06325205, -0.0101777455, -0.016257253, 0.0056500775, 0.005715621, 0.050066557, -0.100352034, -0.029496033) * input_2(1.0, 1.0);
    result += mat4(0.04363428, -0.096975714, 0.008951156, 0.098230936, -0.019951768, -0.072281495, 0.04584836, -0.0031487588, 0.08984647, 0.087130204, 0.087812826, -0.01198462, -0.18903694, -0.20022771, -0.058213398, 0.04279585) * input_3(-1.0, -1.0);
    result += mat4(0.0061358493, 0.0014433287, -0.06983209, -0.022247361, -0.09394987, -0.19263999, -0.107928954, -0.12135034, -0.12658948, 0.080951266, -0.07293442, -0.115055606, -0.023455905, 0.015665056, 0.042063132, -0.047474157) * input_3(-1.0, 0.0);
    result += mat4(0.010994472, 0.012585776, 0.0553006, 0.15414639, 0.015467704, -0.05552266, -0.0092802625, 0.0873485, 0.03540214, -0.054957103, -0.008112579, 0.049577784, -0.11328767, -0.120651074, 0.017850045, 0.030834071) * input_3(-1.0, 1.0);
    result += mat4(0.011247679, -0.033718728, -0.0056340387, 0.070479654, -0.18311732, -0.11853282, -0.09724368, -0.11548734, 0.10357819, 0.19391178, 0.114343435, -0.17263742, 0.013913406, -0.38105902, -0.09224447, 0.063328624) * input_3(0.0, -1.0);
    result += mat4(0.25471845, -0.4153317, -0.26062799, -0.037798405, 0.3940124, 0.020492353, 0.04859651, -0.12590368, -0.3554416, 0.0142690465, -0.2540527, -0.16441871, 0.39984855, 0.27119365, 0.05203906, 0.21051237) * input_3(0.0, 0.0);
    result += mat4(0.057325047, 0.021768657, 0.060234137, 0.20091902, -0.1304001, -0.052362967, 0.040678147, 0.21850482, 0.014690827, 0.03768949, -0.037257727, -0.049544353, 0.17996365, 0.03996507, 0.1169866, -0.22136213) * input_3(0.0, 1.0);
    result += mat4(0.024721455, -0.08354133, 0.05390556, -0.003725774, 0.041939344, -0.007414754, -0.047665913, -0.112673454, 0.19168247, 0.07390635, 0.139028, 0.15261307, -0.006768072, -0.025064787, -0.083839215, -0.20776264) * input_3(1.0, -1.0);
    result += mat4(0.023188239, 0.33117434, -0.06644327, -0.14290184, 0.02659242, -0.0073843827, -0.006052969, -0.030589748, -0.13874365, 0.015357015, -0.124131106, -0.01868171, 0.19331442, 0.063443705, 0.113524854, -0.057271108) * input_3(1.0, 0.0);
    result += mat4(-0.48450676, -0.32467586, -0.38914847, 0.19991018, -0.076589465, -0.155478, 0.020118741, 0.14117566, -0.006599687, -0.08610105, 0.012637558, 0.117939785, 0.077064455, 0.08435005, -0.00055775244, -0.05852751) * input_3(1.0, 1.0);
    result += vec4(-0.00070616923, -0.017909499, 0.008561883, 0.025603507);
    return result;
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Long-Skip-Conv-6)
//!HOOK NATIVE
//!BIND conv2d_5_tf
//!BIND conv2d_tf
//!BIND conv2d_5_tf1
//!BIND conv2d_tf1
//!BIND conv2d_5_tf2
//!BIND conv2d_tf2
//!BIND conv2d_5_tf3
//!BIND conv2d_tf3
//!SAVE conv2d_6_tf
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) ((conv2d_5_tf_texOff(vec2(x_off, y_off)))+(conv2d_tf_texOff(vec2(x_off, y_off))))
#define input_1(x_off, y_off) ((conv2d_5_tf1_texOff(vec2(x_off, y_off)))+(conv2d_tf1_texOff(vec2(x_off, y_off))))
#define input_2(x_off, y_off) ((conv2d_5_tf2_texOff(vec2(x_off, y_off)))+(conv2d_tf2_texOff(vec2(x_off, y_off))))
#define input_3(x_off, y_off) ((conv2d_5_tf3_texOff(vec2(x_off, y_off)))+(conv2d_tf3_texOff(vec2(x_off, y_off))))
vec4 hook() {
    vec4 result = mat4(-0.086658, -0.10105184, 0.045877628, 0.013447155, -0.059427906, -0.06369164, 0.0006228781, -0.015910288, 0.22666283, 0.063044295, 0.23499566, 0.112462886, 0.0039029163, -0.022689259, -0.101714335, -0.020761512) * input_0(-1.0, -1.0);
    result += mat4(0.49856675, -0.15206671, 0.27702042, -0.13318215, 0.08937915, -0.07432798, 0.1014149, -0.03967957, 0.061935768, 0.087176315, -0.0058203028, -0.005597154, -0.008040534, -0.1660219, 0.19835421, 0.011085189) * input_0(-1.0, 0.0);
    result += mat4(-0.0442215, -0.10849278, 0.08780929, -0.21205929, -0.059745237, -0.02862351, 0.13797009, -0.09308625, -0.018144667, -0.05641392, 0.049118597, 0.059273522, 0.082419194, -0.02903013, -0.105917566, -0.054822646) * input_0(-1.0, 1.0);
    result += mat4(0.02471236, -0.026524829, 0.15402158, 0.18742959, 0.20241646, 0.12193801, 0.17359653, 0.07577555, -0.11625263, 0.06618318, 0.25596872, 0.32232428, 0.048832864, -0.03756934, 0.15949725, -0.08950232) * input_0(0.0, -1.0);
    result += mat4(0.242283, 0.8611837, 0.0092408005, 0.36947998, -0.59231687, -0.07571681, -0.0803917, 0.2643147, -0.4415365, -0.39199445, -0.601748, -0.55506384, 0.09407058, 0.06529796, 0.020605784, 0.20794684) * input_0(0.0, 0.0);
    result += mat4(0.020796293, -0.06420347, -0.07178472, 0.12778997, 0.12484071, 0.012532537, -0.18442638, 0.03018903, 0.0312704, 0.041976407, -0.11238423, -0.03113453, 0.052776646, 0.14412004, 0.1229513, -0.17142431) * input_0(0.0, 1.0);
    result += mat4(-0.13664797, 0.0014627017, -0.18664435, -0.12000335, -0.1090234, -0.049827136, -0.08718181, -0.013302529, 0.007905256, -0.076917715, 0.04943704, 0.014158924, -0.13385546, -0.016544692, -0.19948857, -0.052359566) * input_0(1.0, -1.0);
    result += mat4(-0.2683298, 0.0033344887, -0.20699689, 0.1549355, 0.13709576, 0.061634913, 0.037962023, 0.05911486, 0.037422363, -0.0020342646, 0.039106246, -0.11057786, 0.15231477, 0.13637665, 0.11312356, 0.09712071) * input_0(1.0, 0.0);
    result += mat4(0.0017707876, 0.04303277, -0.0630972, -0.037596922, -0.0060083033, -0.011809266, 0.059196908, 0.0029338067, -0.054952227, 0.017286584, -0.027149517, 0.04784332, -0.011888293, -0.018598583, 0.008428289, 0.02333941) * input_0(1.0, 1.0);
    result += mat4(0.032797217, 0.093045, -0.039838426, -0.013386954, 0.17288393, 0.14135125, 0.09228507, 0.016522873, 0.04935829, -0.031439047, -0.012812961, 0.16787241, 0.0035715513, 0.048413783, 0.078576185, 0.07467581) * input_1(-1.0, -1.0);
    result += mat4(-0.065835014, -0.080858104, 0.07074643, -0.03976848, -0.15891336, -0.18427007, -0.042764433, -0.101843104, 0.050003473, 0.13001904, -0.034690864, 0.12707315, -0.07380015, -0.19634745, -0.12606217, -0.065680444) * input_1(-1.0, 0.0);
    result += mat4(0.1143332, -0.0025629818, -0.029427817, 0.06603749, 0.08876201, 0.022992626, -0.07640499, -0.07869159, 0.0044197068, -0.03266058, 0.062882274, 0.16594258, 0.029157693, -0.03448803, 0.0707598, -0.023068992) * input_1(-1.0, 1.0);
    result += mat4(-0.07629417, -0.16868708, 0.07762637, -0.090625905, -0.05318401, -0.025273284, -0.075764716, 0.038667075, 0.0652304, 0.19493642, 0.12694399, 0.06699024, -0.1105598, -0.0026652394, -0.34836742, -0.11847236) * input_1(0.0, -1.0);
    result += mat4(-0.24465154, 0.008287953, 0.024047548, -0.06820986, 0.16605377, 0.3528894, 0.38120276, 0.40859044, 0.21492535, 0.12385704, 0.12099603, -0.039864067, -0.13995783, -0.17981122, -0.27434257, -0.33236215) * input_1(0.0, 0.0);
    result += mat4(0.13114744, 0.201661, -0.10292467, 0.007284679, -0.23681082, -0.087766126, -0.09444945, 0.16697206, 0.113401055, 0.02422451, -0.020524705, 0.15966807, 0.079680234, 0.06510167, 0.044362653, -0.000690077) * input_1(0.0, 1.0);
    result += mat4(-0.011958321, -0.023175322, 0.08764691, 0.20436251, 0.10392766, 0.015934736, -0.030638402, -0.086903475, 0.010248569, 0.16231859, 0.07481513, 0.17125396, -0.011897722, -0.110021435, 0.028308801, -0.12900975) * input_1(1.0, -1.0);
    result += mat4(0.006647437, -0.11201255, -0.049679276, -0.086080894, -0.1598421, -0.08053493, -0.023373242, 0.011234963, 0.11924161, -0.062105574, -0.08685717, 0.13333316, 0.107927285, 0.11623935, -0.03230835, -0.026391422) * input_1(1.0, 0.0);
    result += mat4(0.028393338, 0.00068580196, 0.055408213, -0.105540946, 0.050977364, -0.11758164, 0.16344655, 0.026926296, 0.030197252, 0.18135127, -0.036343977, -0.12136704, -0.06454305, 0.02446237, 0.011198681, 0.122828506) * input_1(1.0, 1.0);
    result += mat4(0.024319058, -0.0042244834, 0.091025025, 0.1102751, 0.08738686, 0.004786951, 0.07899229, 0.0508586, -0.09406424, 0.059747297, 0.03268278, 0.0775348, 0.029051814, 0.0016805512, -0.06347251, 0.03646901) * input_2(-1.0, -1.0);
    result += mat4(0.012484961, -0.19730254, 0.0146325305, -0.1616173, 0.14365077, 0.043357346, 0.07065146, -0.08269674, -0.074094474, -0.08588052, -0.19653031, -0.05818136, -0.18219961, -0.23729356, 0.123078674, -0.28600684) * input_2(-1.0, 0.0);
    result += mat4(-0.09268277, -0.03366921, 0.08442422, -0.04076168, -0.029690774, 0.028222863, -0.027099574, -0.0067195334, 0.0806633, -0.07109785, 0.14207123, 0.06357264, 0.04336089, -0.019430555, -0.12457002, 0.031815156) * input_2(-1.0, 1.0);
    result += mat4(-0.08953667, 0.092733175, -0.26864776, -0.14273082, 0.010449406, 0.029594598, -0.11512645, -0.07154952, -0.017375335, -0.04459377, -0.16704182, -0.020914583, 0.15370943, 0.20811775, -0.067026325, 0.045591757) * input_2(0.0, -1.0);
    result += mat4(-0.55262166, -0.07262281, -0.39228907, 0.16987845, 0.16154103, 0.30737662, 0.2867911, 0.26368618, 0.19944715, 0.10809374, 0.15525332, 0.0045457366, 0.368087, 0.056986414, 0.42977303, 0.621714) * input_2(0.0, 0.0);
    result += mat4(0.15411974, -0.0979115, -0.03232186, -0.03468997, 0.061106466, 0.06282714, 0.0247074, 0.10682661, 0.06290563, -0.02325597, 0.0049730013, -0.16263133, -0.10274038, -0.10060808, 0.12862523, -0.1644311) * input_2(0.0, 1.0);
    result += mat4(0.24707323, 0.14962643, 0.26065898, 0.21498783, -0.008009011, 0.0020147203, -0.02460462, -0.09360947, -0.004284741, -0.0475352, -0.0065194666, 0.008990917, 0.016985685, 0.047668755, -0.11757607, -0.15935342) * input_2(1.0, -1.0);
    result += mat4(0.012912761, -0.14454423, -0.02882876, -0.10549221, 0.044435196, -0.010737169, -0.05566875, -0.035179675, -0.17508782, 0.03323041, -0.21850677, -0.054845273, -0.17182286, 0.035620518, -0.098351374, 0.10165837) * input_2(1.0, 0.0);
    result += mat4(0.13552852, 0.074441, 0.12596354, -0.074754834, 0.010484894, -0.00083531666, 0.038638566, -0.026261665, 0.1299219, 0.031274304, 0.118383, 0.0072023114, 0.075294174, -0.02601283, 0.06725114, 0.030307768) * input_2(1.0, 1.0);
    result += mat4(0.015454758, -0.034834016, 0.035321616, 0.03679107, 0.09850662, -0.03632739, 0.074914515, -0.042983543, -0.11730042, -0.15267402, -0.06740683, 0.034261372, 0.10057861, 0.009540056, -0.019425245, -0.041582048) * input_3(-1.0, -1.0);
    result += mat4(-0.08637006, -0.17279401, -0.047369827, -0.039154343, 0.013361748, -0.012995324, 0.10899289, -0.10833401, -0.14849132, -0.099916704, -0.15636775, -0.06892397, -0.054031994, -0.039545506, -0.07042941, -0.20406711) * input_3(-1.0, 0.0);
    result += mat4(0.025644733, 0.033522237, 0.044502575, 0.010117947, 0.072868474, -0.10322855, -0.065569766, -0.038568046, -0.095055684, -0.003217324, -0.0049792235, 0.03371084, 0.13526547, -0.023002092, -0.098631375, -0.07004502) * input_3(-1.0, 1.0);
    result += mat4(0.044788904, 0.048961867, 0.097939335, 0.0072178417, -0.14870939, 0.00961502, -0.05811594, 0.12245928, -0.113272816, 0.057262786, -0.16902162, -0.059260808, -0.017640714, 0.063150965, -0.2470649, -0.22797135) * input_3(0.0, -1.0);
    result += mat4(0.11203433, -0.05906514, -0.16205189, -0.16409607, 0.010059715, -0.37704846, -0.023449223, -0.13358429, -0.062119476, -0.1936222, -0.14625053, 0.059900325, 0.01393319, -0.056582745, -0.045890216, -0.015285783) * input_3(0.0, 0.0);
    result += mat4(0.021088207, 0.059162587, 0.254257, 0.021700785, -0.01869167, 0.1285214, -0.15121521, -0.23364787, -0.024386624, -0.11800216, -0.10446911, 0.052835423, -0.13391013, 0.09748742, -0.04287292, 0.08894597) * input_3(0.0, 1.0);
    result += mat4(0.041896198, 0.13940418, 0.018619535, 0.15008712, 0.08440631, 0.104749665, 0.028905075, -0.031756196, -0.037091985, -0.060304724, 0.067064084, -0.15793918, 0.061553445, 0.072008505, 0.011706107, -0.014178442) * input_3(1.0, -1.0);
    result += mat4(-0.14128473, 0.018859237, -0.013362864, 0.17246523, -0.23813282, 0.12604558, -0.1244992, 0.22721146, 0.13564807, 0.016635234, -0.10047886, -0.13842075, -0.026402501, -0.013624337, 0.06389096, -0.056169737) * input_3(1.0, 0.0);
    result += mat4(0.044603486, 0.053349625, -0.12850304, -0.09885845, 0.03561917, 0.06670711, -0.081994906, 0.10224355, -0.051635068, 0.075076796, -0.172732, 0.10751107, -0.090978906, 0.022738688, -0.1463124, 0.070672855) * input_3(1.0, 1.0);
    result += vec4(0.06686263, 0.056981545, 0.072615586, 0.08278444);
    return result;
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Long-Skip-Conv-6)
//!HOOK NATIVE
//!BIND conv2d_5_tf
//!BIND conv2d_tf
//!BIND conv2d_5_tf1
//!BIND conv2d_tf1
//!BIND conv2d_5_tf2
//!BIND conv2d_tf2
//!BIND conv2d_5_tf3
//!BIND conv2d_tf3
//!SAVE conv2d_7_tf
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) ((conv2d_5_tf_texOff(vec2(x_off, y_off)))+(conv2d_tf_texOff(vec2(x_off, y_off))))
#define input_1(x_off, y_off) ((conv2d_5_tf1_texOff(vec2(x_off, y_off)))+(conv2d_tf1_texOff(vec2(x_off, y_off))))
#define input_2(x_off, y_off) ((conv2d_5_tf2_texOff(vec2(x_off, y_off)))+(conv2d_tf2_texOff(vec2(x_off, y_off))))
#define input_3(x_off, y_off) ((conv2d_5_tf3_texOff(vec2(x_off, y_off)))+(conv2d_tf3_texOff(vec2(x_off, y_off))))
vec4 hook() {
    vec4 result = mat4(0.017907174, 0.046969313, 0.00904224, 0.015451573, -0.02567845, 0.006158517, -0.026694046, -0.04527548, 0.06844264, 0.031233653, 0.054282356, 0.06584815, -0.0150379, -0.05441252, 0.0016687624, 0.036114674) * input_0(-1.0, -1.0);
    result += mat4(-0.020765828, 0.11181505, -0.01594726, 0.13166925, -0.13120148, -0.046964645, -0.13973314, -0.0060463874, -0.08599286, -0.09081537, 0.026373202, -0.07404822, -0.10136315, -0.11590694, -0.015594354, -0.11928692) * input_0(-1.0, 0.0);
    result += mat4(-0.054308727, 0.0023384157, -0.08770878, -0.0009807008, -0.041968282, -0.036179952, -0.060711354, -0.034487642, -0.02627635, -0.030216131, -0.10503863, -0.0941213, 0.010671797, 0.009042741, -0.060216278, -0.071261406) * input_0(-1.0, 1.0);
    result += mat4(-0.02562216, 0.020960405, -0.0118954955, 0.017681327, 0.08871458, 0.07500182, 0.032236256, 0.07706739, -0.012188246, 0.055701215, -0.017563432, 0.019267492, -0.036698155, 0.030026749, 0.0428384, -0.011748116) * input_0(0.0, -1.0);
    result += mat4(-0.0042516585, -0.057901908, 0.008914162, -0.029767195, 0.024429822, -0.15467285, 0.06087283, -0.06475459, 0.15796238, 0.20821692, 0.13578182, 0.17540069, -0.037289776, 0.054460857, -0.20198797, -0.059863903) * input_0(0.0, 0.0);
    result += mat4(-0.024393331, -0.013969032, -0.052056983, -0.055812273, 0.046635073, -0.024627533, 0.15773164, -0.024138818, -0.022808338, 0.016795836, -0.0024398605, 0.066244364, 0.0324829, 0.062471997, -0.04451633, 0.058163457) * input_0(0.0, 1.0);
    result += mat4(0.03189486, 0.044372756, 0.0122632105, 0.034610167, -0.015962115, 0.025290953, -0.0044256127, 0.011224083, -0.015607753, -0.04554957, 0.01839258, -0.046389125, 0.09961659, 0.05912269, 0.07539219, 0.08372977) * input_0(1.0, -1.0);
    result += mat4(0.071627, -0.027662633, 0.044272803, -0.028924238, 0.005302202, 0.04666809, 0.008898859, 0.037568286, -0.0031093317, -0.0029432313, -0.005719502, -0.004853269, 0.09456691, 0.048305638, 0.030760692, -0.060832355) * input_0(1.0, 0.0);
    result += mat4(-0.0034030904, 0.0035570208, 0.024162209, -0.00015464127, -0.006245018, -0.0034809296, 0.008139713, 0.02985159, -0.019792227, -0.024025653, -0.047548052, -0.034108642, -0.026407037, -0.012042586, 0.020773394, 0.03832292) * input_0(1.0, 1.0);
    result += mat4(-0.033924825, -0.017943703, 0.00585076, 0.014044309, -0.0037736767, 0.019836122, 0.02553062, 0.021725861, -0.028444417, -0.0890908, -0.02050874, 0.027476441, -0.050832797, -0.052038796, 0.009163212, -0.03595269) * input_1(-1.0, -1.0);
    result += mat4(-0.048028022, 0.018049158, -0.086497515, -0.03929557, 0.12371013, 0.08994937, 0.060230855, 0.044104196, -0.016396338, 0.015316064, 0.16013338, -0.008512983, -0.0068054963, 0.048804186, -0.0228349, 0.019139135) * input_1(-1.0, 0.0);
    result += mat4(-0.017237011, 0.03909929, 0.018963687, 0.10080973, 0.033950277, 0.011050742, 0.08015942, 0.07357463, -0.019542018, 0.08310067, -0.034659885, 0.0765417, -0.02801351, -0.009149742, -0.020412583, -0.0006548331) * input_1(-1.0, 1.0);
    result += mat4(-0.01663965, -0.020068998, 0.017259859, -0.0037614363, -0.20267545, -0.12445919, -0.031279955, -0.001140561, 0.005428932, -0.011062461, -0.020749051, -0.08591493, -0.02421419, 0.0034192961, -0.046792924, 0.049892765) * input_1(0.0, -1.0);
    result += mat4(0.07086389, 0.007329951, -0.041961167, -0.027556188, -0.20815584, -0.17094968, -0.307131, -0.2722363, 0.12837277, 0.18997844, 0.114225775, 0.18536747, 0.050767433, 0.03599485, -0.059470203, -0.11285266) * input_1(0.0, 0.0);
    result += mat4(0.097675845, 0.014484223, 0.13016836, -0.027693694, 0.042874195, 0.023068393, -0.018164234, -0.06497683, -0.15471804, -0.057425447, -0.08192719, 0.1488124, 0.010534281, -0.00815849, 0.017779259, 0.01629785) * input_1(0.0, 1.0);
    result += mat4(-0.09834612, 0.005842647, -0.028064525, 0.048596676, -0.035655603, -0.045275647, 0.041941583, 0.055702116, -0.02487689, 0.040680353, -0.042635977, -0.0290294, 0.0032331026, 0.022512661, -0.030875495, -0.019040057) * input_1(1.0, -1.0);
    result += mat4(-0.071716234, 0.04907317, -0.16594978, -0.086909994, -0.09634132, 0.013006132, -0.13143043, -0.11936771, 0.15823106, 0.09464436, 0.080186166, 0.15175882, 0.022919446, -0.0037922326, 0.019026838, -0.005318463) * input_1(1.0, 0.0);
    result += mat4(0.07209709, 0.09076141, 0.057789475, 0.14595851, -0.019367062, 0.03876739, -0.04295378, 0.047655888, 0.09277347, 0.019453414, 0.1362668, 0.021231968, -0.026175996, -0.022761153, 0.0031740067, 0.023649726) * input_1(1.0, 1.0);
    result += mat4(0.02753061, 0.03568831, 0.020820284, 0.0019212437, 0.0638283, -0.03392425, 0.08962693, -0.013265329, -0.05197951, -0.03425665, -0.05003272, -0.05757804, -0.028722642, -0.03214543, 0.0058359075, -0.017482582) * input_2(-1.0, -1.0);
    result += mat4(0.052897777, -0.0050816843, 0.056706376, 0.012297304, -0.055725396, 0.020984203, 0.04040299, 0.0010824729, -0.0686329, -0.039309897, -0.012053802, -0.00095412205, -0.014669286, -0.09989021, 0.003250133, -0.0642538) * input_2(-1.0, 0.0);
    result += mat4(-0.044111077, -0.08979479, -0.0272577, -0.07912522, -0.0038349042, 0.06508863, -0.023701405, 0.0854657, -0.057683133, -0.094308496, -0.13059032, -0.13745694, 0.0025492208, -0.06890188, -0.020561188, -0.1071837) * input_2(-1.0, 1.0);
    result += mat4(0.070805795, 0.13061623, 0.004932282, 0.08565516, -0.087381765, -0.10549588, 0.023562126, -0.016559292, -0.03092604, 0.10251301, -0.09004156, 0.08357403, -0.029517844, 0.0012499661, -0.056829896, 0.03300983) * input_2(0.0, -1.0);
    result += mat4(0.24267827, 0.27068937, 0.11488217, 0.1950345, -0.0551868, -0.087763034, -0.08833248, -0.006211695, 0.050074887, 0.07349907, -0.062333018, -0.007791638, 0.2147127, 0.2243601, 0.20047201, 0.15107572) * input_2(0.0, 0.0);
    result += mat4(0.01888398, 0.0024897044, 0.15603563, 0.119726, -0.0501798, -0.066076376, -0.020204715, -0.084376976, 0.08000625, 0.05153771, -0.01643024, -0.09453987, 0.048070673, 0.076980546, -0.013364471, 0.04573562) * input_2(0.0, 1.0);
    result += mat4(-0.08641804, -0.019494712, -0.06582894, -0.017792223, -0.024977032, 0.070552416, -0.058074947, 0.04523764, -0.046786007, -0.0034533213, -0.055307645, -0.024879497, -0.00091364153, -0.005340355, 0.0030870112, -0.019386914) * input_2(1.0, -1.0);
    result += mat4(-0.093882695, 0.07489052, -0.07190862, 0.13488916, -0.050424762, -0.08367524, -0.05562439, -0.06365345, -0.070790656, 0.09705493, -0.115544856, 0.04832721, -0.005798343, 0.03686461, -0.015894417, 0.029765578) * input_2(1.0, 0.0);
    result += mat4(0.06199084, 0.030925011, 0.035255507, -0.012426544, -0.027559396, -0.037152063, 0.01493774, 0.028665593, 0.0869984, 0.07389818, 0.050627388, 0.009185843, 0.021723818, 0.03908615, -0.011814601, 0.0040743737) * input_2(1.0, 1.0);
    result += mat4(0.0029266665, 0.018209882, 0.0083628455, 0.019940522, -0.04866856, 0.03958282, 0.010100008, 0.029470794, -0.09065617, -0.17590271, 0.03254191, -0.1382741, -0.016081538, -0.050297253, 0.04021477, 0.04446745) * input_3(-1.0, -1.0);
    result += mat4(-0.109127395, -0.097386576, -0.07828437, -0.037681423, -0.09266632, 0.034487262, -0.06491131, 0.05344763, -0.022984073, 0.041244112, 0.027121782, 0.028926231, 0.0050864797, 0.032033164, 0.08568941, -0.031205792) * input_3(-1.0, 0.0);
    result += mat4(-0.0032002442, -0.041361425, -0.030466784, -0.063192956, -0.010250283, 0.01609808, -0.11942989, -0.03437898, -0.028926365, 0.050932862, -0.042765487, 0.09022972, 0.0072076456, 0.08755348, -0.035025086, 0.072774075) * input_3(-1.0, 1.0);
    result += mat4(-0.073224075, -0.05686341, 0.045916528, -0.0088198325, -0.077116765, -0.112888984, -0.009612848, -0.02546814, -0.039230555, 0.008905192, -0.18264827, 0.02819143, 0.003781983, -0.058714718, 0.13247286, 0.009162901) * input_3(0.0, -1.0);
    result += mat4(-0.39324236, -0.37000397, -0.4155894, -0.3948434, 0.047737017, -0.076653026, 0.0062225424, -0.16965628, -0.1634083, -0.20352669, -0.099182405, -0.18318662, -0.06952382, 0.054112736, 0.04674551, 0.10776717) * input_3(0.0, 0.0);
    result += mat4(0.0073031667, 0.03585023, -0.1424651, -0.07357041, 0.07003241, 0.062052805, -0.029667567, -0.032141175, -0.06371166, -0.04067378, -0.022741333, 0.06162255, -0.05418759, 0.0392773, -0.18050063, 0.03017369) * input_3(0.0, 1.0);
    result += mat4(0.040773805, -0.039169453, 0.023206389, 0.024677783, 0.0851926, 0.008242424, 0.052471265, 0.02213302, -0.14494371, -0.033497654, -0.16055927, -0.14572147, 0.046045035, 0.03753326, 0.034137715, 0.06349765) * input_3(1.0, -1.0);
    result += mat4(0.10958135, -0.040874273, 0.1016946, -0.036816914, 0.08629257, -0.028774256, 0.10088884, 0.007868438, -0.03377831, -0.10135555, 0.017235618, 0.13042223, 0.06866813, -0.14286242, 0.06522622, -0.13498154) * input_3(1.0, 0.0);
    result += mat4(0.04403879, 0.0051052, 0.05758737, -0.08823507, 0.018017897, -0.01408439, 0.060825266, -0.039096657, -0.02940114, -0.057616644, -0.0029966303, -0.109802976, -0.07202204, -0.04482633, -0.05779732, -0.037722085) * input_3(1.0, 1.0);
    result += vec4(0.063501745, 0.054690637, 0.06692544, 0.06377897);
    return result;
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Long-Skip-Conv-6)
//!HOOK NATIVE
//!BIND conv2d_5_tf
//!BIND conv2d_tf
//!BIND conv2d_5_tf1
//!BIND conv2d_tf1
//!BIND conv2d_5_tf2
//!BIND conv2d_tf2
//!BIND conv2d_5_tf3
//!BIND conv2d_tf3
//!SAVE conv2d_8_tf
//!WIDTH NATIVE.w
//!HEIGHT NATIVE.h
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
#define input_0(x_off, y_off) ((conv2d_5_tf_texOff(vec2(x_off, y_off)))+(conv2d_tf_texOff(vec2(x_off, y_off))))
#define input_1(x_off, y_off) ((conv2d_5_tf1_texOff(vec2(x_off, y_off)))+(conv2d_tf1_texOff(vec2(x_off, y_off))))
#define input_2(x_off, y_off) ((conv2d_5_tf2_texOff(vec2(x_off, y_off)))+(conv2d_tf2_texOff(vec2(x_off, y_off))))
#define input_3(x_off, y_off) ((conv2d_5_tf3_texOff(vec2(x_off, y_off)))+(conv2d_tf3_texOff(vec2(x_off, y_off))))
vec4 hook() {
    vec4 result = mat4(-0.030160882, -0.030568639, -0.0025661539, -0.014083658, -0.08992588, -0.03788542, -0.11706418, -0.059433527, -0.078212395, -0.102361344, -0.08549949, -0.093603134, -0.054102685, 0.013805906, 0.090144016, 0.043195713) * input_0(-1.0, -1.0);
    result += mat4(-0.015944444, 0.087899365, -0.036398347, 0.058983907, 0.03299223, 0.079432994, -0.03347577, 0.105584994, 0.16097397, 0.044181228, 0.02569789, -0.09468597, 0.0462068, 0.021555973, -0.08972555, -0.012750464) * input_0(-1.0, 0.0);
    result += mat4(0.0062598917, 0.051477548, 0.020730348, 0.06071913, -0.022271609, 0.053938463, 0.01904341, 0.066783324, 0.07360282, -0.0019866296, 0.10481535, 0.032239713, 0.056519352, -0.03190704, 0.003178575, -0.091794714) * input_0(-1.0, 1.0);
    result += mat4(-0.015471975, -0.01534145, 0.09099412, 0.04305185, -0.1307472, -0.1070834, -0.1044233, -0.13289052, 0.04357325, 0.04130331, -0.012060598, 0.009071946, -0.057449624, -0.23095696, -0.055591483, -0.056093883) * input_0(0.0, -1.0);
    result += mat4(-0.06769924, -0.1357666, -0.056757946, -0.14059533, 0.12240774, 0.08199822, 0.13054785, -0.015343449, 0.1797169, 0.2260695, 0.096658185, 0.1736915, -0.001733867, -0.13929689, -0.130478, -0.32473978) * input_0(0.0, 0.0);
    result += mat4(-0.05362695, -0.03680333, -0.049294267, -0.009717152, 0.0036903648, 0.043213632, 0.06348171, 0.06915273, 0.0417127, -0.005311504, 0.060071997, 0.033809196, -0.008451688, 0.002160754, -0.021745102, 0.019315049) * input_0(0.0, 1.0);
    result += mat4(-0.01142159, 0.020575456, 0.034582555, 0.067726396, 0.01910449, -0.024369514, 0.044051364, 0.04207031, -0.0015111513, -0.0130253695, 0.01937325, 0.006269555, -0.04438551, -0.012119381, -0.027600901, -0.035165336) * input_0(1.0, -1.0);
    result += mat4(0.005959345, 0.036082823, -0.032293685, -0.010286412, -0.057152744, 0.022677148, -0.05754487, 0.00029810867, -0.08605633, -2.4993582e-05, -0.1273787, -0.09298027, -0.08040835, -0.01753213, -0.060107417, -0.00874443) * input_0(1.0, 0.0);
    result += mat4(-0.008272406, -0.06179953, 0.0057761823, -0.051634144, 0.017518412, 0.039133925, -0.02538819, -0.0009793714, 0.0135764675, 0.046739664, 0.020609383, 0.07049474, 0.0070428452, -0.042527154, 0.028500924, -0.02061418) * input_0(1.0, 1.0);
    result += mat4(0.052079745, 0.008983345, 0.0048693675, -0.029814404, 0.104235716, -0.025773745, 0.0358855, -0.03233268, 0.077301495, 0.082629934, 0.1148688, 0.09741417, -0.016678086, -0.058726743, -0.025462737, -0.019378316) * input_1(-1.0, -1.0);
    result += mat4(-0.057662915, -0.09586086, 0.16745722, 0.057701934, 0.03341279, -0.11674479, 0.104313955, -0.04868174, 0.05251932, 0.040649373, 0.0030523187, -0.06832058, 0.1421983, 0.060980137, 0.10408356, 0.005035989) * input_1(-1.0, 0.0);
    result += mat4(0.06787595, -0.049982492, 0.0051409192, -0.087048866, 0.052313767, 0.0007538793, 0.113470614, -0.07107626, 0.0841152, -0.12339054, 0.07968422, -0.02664967, 0.045031305, -0.006940484, 0.027136562, -0.04915944) * input_1(-1.0, 1.0);
    result += mat4(-0.05768422, -0.012543245, -0.06289324, -0.017824402, 0.044186838, 0.18091644, -0.016273191, 0.060446315, 0.14006607, -0.079419404, 0.1675333, 0.06929705, 0.03145103, 0.06402823, 0.039500225, 0.015131619) * input_1(0.0, -1.0);
    result += mat4(-0.09535095, -0.08072544, 0.007983352, 0.19729161, 0.12788375, 0.20298778, 0.02285255, 0.17990871, 0.007858245, 0.060670223, 0.15124707, 0.011261495, 0.27667195, 0.2908282, 0.21685407, 0.25455365) * input_1(0.0, 0.0);
    result += mat4(0.10975713, 0.10274162, -0.03505291, -0.07131202, 0.0072612558, -0.0027869008, 0.045371447, 0.11849428, 0.0489725, 0.13550049, 0.010006433, 0.07111621, 0.09319211, 0.090218656, 0.1903735, 0.17457981) * input_1(0.0, 1.0);
    result += mat4(0.05788003, 0.016449958, 0.05843175, 0.026918598, 0.008392893, -0.020924391, -0.04090714, -0.045506336, -0.04334845, 0.11714321, -0.00023774062, 0.030412758, -0.0541379, -0.04424408, -0.038582135, -0.025345191) * input_1(1.0, -1.0);
    result += mat4(0.02177305, -0.17116351, 0.10954458, -0.0029787945, -0.060013168, 0.034150172, -0.0899932, -0.0410054, 0.08571307, -0.050675333, 0.108157665, 0.18527418, 0.034107685, 0.12517789, -0.003608878, 0.03131422) * input_1(1.0, 0.0);
    result += mat4(0.031353828, 0.014894023, -0.034604635, -0.05297757, -0.06828642, -0.016460197, -0.09306111, -0.016716573, 0.11121014, 0.0048617353, 0.092643686, 0.036803123, -0.006201937, 0.02351328, 0.010934863, 0.080584705) * input_1(1.0, 1.0);
    result += mat4(-0.01869867, -0.08590219, -0.02190817, -0.02573121, -0.11308214, -0.11136302, -0.10911817, -0.058626138, -0.0291966, -0.09593385, -0.005725426, -0.040567905, 0.03936798, -0.033594802, -0.016247645, -0.013356729) * input_2(-1.0, -1.0);
    result += mat4(0.05107081, 0.07880534, -0.06536621, -0.07556358, 0.048905898, -0.046845164, 0.0172291, -0.13563971, 0.09635933, 0.09050147, -0.048534412, 0.008947322, 0.07904266, 0.0024741658, 0.057837315, -0.025211116) * input_2(-1.0, 0.0);
    result += mat4(-0.0131275, 0.075468086, 0.015684977, 0.12125727, 0.030829923, -0.048033055, -0.021028088, -0.012345548, 0.107373595, 0.07450985, 0.17535, 0.030786531, 0.04440197, 0.0031459052, 0.052836295, -0.045296147) * input_2(-1.0, 1.0);
    result += mat4(-0.019417001, 0.04596181, 0.033668753, 0.016504267, -0.02268263, -0.04801934, -0.12637904, -0.13447997, -0.070278704, 0.06062678, 0.007646942, 0.001551468, 0.0457736, 0.12900983, 0.013899535, -0.02325544) * input_2(0.0, -1.0);
    result += mat4(-0.34532866, -0.17067738, -0.22810662, -0.123689644, -0.019720385, 0.13336696, -0.08827181, 0.14025454, -0.13662596, -0.042988062, -0.12961408, -0.07535889, 0.13988109, 0.097250536, 0.09898145, 0.124446295) * input_2(0.0, 0.0);
    result += mat4(-0.06813484, -0.055083778, -0.055601384, -0.08934842, -0.025942057, 0.05186326, -0.017690856, -0.0041642203, -0.10476514, 0.040519316, -0.04014173, 0.15775537, -0.08567793, -0.0813288, -0.05642924, -0.046756532) * input_2(0.0, 1.0);
    result += mat4(0.070463866, 0.053560127, -0.029643098, -0.054245576, -0.025466131, -0.05491537, 0.07155546, 0.010588366, 0.031275615, -2.1234107e-05, -0.0945716, -0.077287614, -0.023820128, -0.014594561, -0.039319813, -0.019347439) * input_2(1.0, -1.0);
    result += mat4(0.15633278, -0.071872264, 0.10987633, 0.028384099, 0.12027605, 0.033890236, 0.14186542, 0.018830609, 0.07337405, -0.08419538, 0.0032182878, -0.05543462, 0.0011395463, 0.034901474, -0.06588092, -0.061944276) * input_2(1.0, 0.0);
    result += mat4(0.07657334, 0.051069688, 0.12901166, 0.064742595, 0.096636206, 0.012493834, 0.0910735, 0.033989333, -0.011354104, -0.031661503, 0.065167196, 0.015404405, -0.028289612, -0.03740207, -0.005585034, 0.012937679) * input_2(1.0, 1.0);
    result += mat4(0.0012700746, 0.0059570544, 0.05737385, 0.051536884, 0.08993862, -0.010807607, 0.055525776, -0.002044888, -0.0955116, -0.12378307, -0.104070336, -0.076668575, 0.033532526, 0.0098531265, 0.09533271, 0.054970857) * input_3(-1.0, -1.0);
    result += mat4(0.053283148, 0.09895594, 0.07564025, 0.03489096, -0.02314476, -0.08728255, 0.0031581784, -0.049393106, -0.008595658, -0.046129204, -0.107446074, -0.13793197, -0.037570983, -0.07452396, -0.0294996, -0.10076855) * input_3(-1.0, 0.0);
    result += mat4(-0.021780761, -0.007056008, -0.024726443, 0.012274079, 0.054757807, -0.019125724, 0.07950494, -0.077483185, -0.03818471, -0.08892934, 0.03615427, 0.044618282, 0.13541499, -0.055285323, 0.065482974, -0.08336124) * input_3(-1.0, 1.0);
    result += mat4(0.067860626, -0.022971738, -0.0076788506, -0.01264988, 0.08421155, 0.16340978, 0.14292525, 0.18303038, -0.10179828, -0.124490544, -0.0022202956, -0.058637355, -0.0013290936, -0.09951933, 0.08237116, 0.07561016) * input_3(0.0, -1.0);
    result += mat4(0.10183597, 0.113213286, 0.25578162, 0.18480344, -0.22158493, -0.17317042, -0.23558544, -0.1630382, -0.081254415, -0.022290565, -0.13394558, -0.19720933, -0.06358904, -0.10865303, -0.15786196, -0.15108606) * input_3(0.0, 0.0);
    result += mat4(0.010437607, 0.060493022, -0.017562026, 0.049135704, -0.066382974, -0.0076825325, -0.011678394, 0.12009226, 0.025779622, 0.04254862, 0.09119694, 0.031214125, 0.02714922, -0.017867317, -0.058559727, -0.05276478) * input_3(0.0, 1.0);
    result += mat4(0.006541696, 0.08756253, -0.05771027, -0.046530757, -0.033776127, -0.00051035744, 0.015733948, 0.03882947, -0.083198, -0.13346866, 0.1008144, 0.073774874, -0.04401183, 0.006679712, 0.048785347, 0.04922721) * input_3(1.0, -1.0);
    result += mat4(-0.023132483, -0.085897736, 0.039564826, 0.15358205, -0.027650507, 0.049930494, -0.08016391, -0.06428869, 0.017911356, -0.06060531, 0.007173012, -0.08949633, -0.022672564, 0.081167236, -0.03455032, -0.022684809) * input_3(1.0, 0.0);
    result += mat4(-0.010029913, -0.024612784, 0.0029593285, -0.0589878, -0.048797473, -0.063982114, -0.011248259, -0.0006602324, 0.031144587, -0.04084947, -0.025031019, 0.019332284, -0.0026467685, -0.041486856, -0.00462194, 0.015147069) * input_3(1.0, 1.0);
    result += vec4(0.05501215, 0.060130376, 0.053478118, 0.054431017);
    return result;
}

//!DESC [ArtCNN_Legacy_C4F16_DS_YCbCr] (Pixel-Shuffle)
//!HOOK NATIVE
//!BIND conv2d_6_tf
//!BIND conv2d_7_tf
//!BIND conv2d_8_tf
//!WIDTH NATIVE.w 2 *
//!HEIGHT NATIVE.h 2 *
//!COMPONENTS 4
//!WHEN OUTPUT.w NATIVE.w 1.200 * > OUTPUT.h NATIVE.h 1.200 * > *
vec4 hook() {
    vec4 output_pix = vec4(0.0, 0.0, 0.0, 1.0);
    vec2 f0 = fract(conv2d_6_tf_pos * conv2d_6_tf_size);
    ivec2 i0 = ivec2(f0 * vec2(2.0));
    output_pix.x = conv2d_6_tf_tex((vec2(0.5) - f0) * conv2d_6_tf_pt + conv2d_6_tf_pos)[i0.y * 2 + i0.x];
    output_pix.y = conv2d_7_tf_tex((vec2(0.5) - f0) * conv2d_7_tf_pt + conv2d_7_tf_pos)[i0.y * 2 + i0.x];
    output_pix.z = conv2d_8_tf_tex((vec2(0.5) - f0) * conv2d_8_tf_pt + conv2d_8_tf_pos)[i0.y * 2 + i0.x];
    return clamp(output_pix, 0.0, 1.0);
}
